diff mbox series

acpi: mcfg: checking kernel lockdown when doing mmap PCI config space

Message ID 20220511094206.20916-1-ivan.hu@canonical.com
State Accepted
Headers show
Series acpi: mcfg: checking kernel lockdown when doing mmap PCI config space | expand

Commit Message

Ivan Hu May 11, 2022, 9:42 a.m. UTC
Buglink: https://bugs.launchpad.net/fwts/+bug/1972973

Signed-off-by: Ivan Hu <ivan.hu@canonical.com>
---
 src/acpi/mcfg/mcfg.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
diff mbox series

Patch

diff --git a/src/acpi/mcfg/mcfg.c b/src/acpi/mcfg/mcfg.c
index 83e4ec8e..b0832b6b 100644
--- a/src/acpi/mcfg/mcfg.c
+++ b/src/acpi/mcfg/mcfg.c
@@ -65,6 +65,20 @@  static int compare_config_space(
 	}
 
 	if ((mapped_config_space = fwts_mmap(config->base_address, page_size)) == FWTS_MAP_FAILED) {
+		char *data;
+
+		if ((data = fwts_get("/sys/kernel/security/lockdown")) != NULL) {
+			if (strstr(data, "[none]") == NULL) {
+				free(data);
+				fwts_log_info(fw, "Kernel is in lockdown mode. Aborted.");
+				fwts_log_info(fw, "Please unlock the kernel before testing.");
+				fwts_log_info(fw, "Make sure you disable secureboot and disable "
+					"the kernel lockdown, (by kernel parameter lockdown=None).");
+				return FWTS_ABORTED;
+			}
+		}
+		free(data);
+
 		fwts_failed(fw, LOG_LEVEL_MEDIUM, "MMapUnmappable",
 			"Cannot mmap PCI config space at 0x%" PRIx64 ".",
 			config->base_address);