dbc4a9b
From: Josh Boyer <jwboyer@redhat.com>
dbc4a9b
Date: Mon, 25 Jun 2012 19:57:30 -0400
dbc4a9b
Subject: [PATCH] acpi: Ignore acpi_rsdp kernel parameter when module loading
dbc4a9b
 is restricted
dbc4a9b
dbc4a9b
This option allows userspace to pass the RSDP address to the kernel, which
dbc4a9b
makes it possible for a user to circumvent any restrictions imposed on
dbc4a9b
loading modules. Disable it in that case.
dbc4a9b
dbc4a9b
Signed-off-by: Josh Boyer <jwboyer@redhat.com>
dbc4a9b
---
dbc4a9b
 drivers/acpi/osl.c | 3 ++-
dbc4a9b
 1 file changed, 2 insertions(+), 1 deletion(-)
dbc4a9b
dbc4a9b
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
dbc4a9b
index 3abe9b223ba7..ee8f11cf65da 100644
dbc4a9b
--- a/drivers/acpi/osl.c
dbc4a9b
+++ b/drivers/acpi/osl.c
dbc4a9b
@@ -44,6 +44,7 @@
dbc4a9b
 #include <linux/list.h>
dbc4a9b
 #include <linux/jiffies.h>
dbc4a9b
 #include <linux/semaphore.h>
dbc4a9b
+#include <linux/module.h>
dbc4a9b
 
dbc4a9b
 #include <asm/io.h>
dbc4a9b
 #include <asm/uaccess.h>
dbc4a9b
@@ -245,7 +246,7 @@ early_param("acpi_rsdp", setup_acpi_rsdp);
dbc4a9b
 acpi_physical_address __init acpi_os_get_root_pointer(void)
dbc4a9b
 {
dbc4a9b
 #ifdef CONFIG_KEXEC
dbc4a9b
-	if (acpi_rsdp)
dbc4a9b
+	if (acpi_rsdp && !secure_modules())
dbc4a9b
 		return acpi_rsdp;
dbc4a9b
 #endif
dbc4a9b
 
dbc4a9b
-- 
dbc4a9b
1.9.3
dbc4a9b