x86/mmiotrace: Lock down the testmmiotrace module
authorDavid Howells <dhowells@redhat.com>
Mon, 18 Feb 2019 12:45:01 +0000 (12:45 +0000)
committerSalvatore Bonaccorso <carnil@debian.org>
Thu, 26 Sep 2019 12:19:06 +0000 (13:19 +0100)
The testmmiotrace module shouldn't be permitted when the kernel is locked
down as it can be used to arbitrarily read and write MMIO space.

Suggested-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David Howells <dhowells@redhat.com
cc: Thomas Gleixner <tglx@linutronix.de>
cc: Steven Rostedt <rostedt@goodmis.org>
cc: Ingo Molnar <mingo@kernel.org>
cc: "H. Peter Anvin" <hpa@zytor.com>
cc: x86@kernel.org

Gbp-Pq: Topic features/all/lockdown
Gbp-Pq: Name 0022-x86-mmiotrace-Lock-down-the-testmmiotrace-module.patch

arch/x86/mm/testmmiotrace.c

index 0881e1ff1e5835d2b057833503ea9fdf131e8cb1..13f1da99ee5ee7263cb9ae97204cbb81f24a331c 100644 (file)
@@ -116,6 +116,9 @@ static int __init init(void)
 {
        unsigned long size = (read_far) ? (8 << 20) : (16 << 10);
 
+       if (kernel_is_locked_down("MMIO trace testing"))
+               return -EPERM;
+
        if (mmio_address == 0) {
                pr_err("you have to use the module argument mmio_address.\n");
                pr_err("DO NOT LOAD THIS MODULE UNLESS YOU REALLY KNOW WHAT YOU ARE DOING!\n");