arm64: mm: unexport set_memory_ro and set_memory_rw
authorDaniel Borkmann <daniel@iogearbox.net>
Sun, 1 Mar 2015 10:14:39 +0000 (10:14 +0000)
committerWill Deacon <will.deacon@arm.com>
Thu, 19 Mar 2015 10:43:56 +0000 (10:43 +0000)
This effectively unexports set_memory_ro and set_memory_rw functions from
commit 11d91a770f1f ("arm64: Add CONFIG_DEBUG_SET_MODULE_RONX support").

No module user of those is in mainline kernel and we explicitly do not want
modules to use these functions, as they i.e. RO-protect eBPF (interpreted and
JIT'ed) images from malicious modifications/bugs.

Outside of eBPF scope, I believe also other set_memory_* functions should
be unexported on arm64 due to non-existant mainline module user. Laura
mentioned that they have some uses for modules doing set_memory_*, but
none that are in mainline and it's unclear if they would ever get there.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@plumgrid.com>
Acked-by: Laura Abbott <lauraa@codeaurora.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/mm/pageattr.c

index 1d3ec3ddd84b72e654819b7818d03cbaf082815e..e47ed1c5dce1bbe50c22094b17cc12e82dde6cdf 100644 (file)
@@ -73,7 +73,6 @@ int set_memory_ro(unsigned long addr, int numpages)
                                        __pgprot(PTE_RDONLY),
                                        __pgprot(PTE_WRITE));
 }
-EXPORT_SYMBOL_GPL(set_memory_ro);
 
 int set_memory_rw(unsigned long addr, int numpages)
 {
@@ -81,7 +80,6 @@ int set_memory_rw(unsigned long addr, int numpages)
                                        __pgprot(PTE_WRITE),
                                        __pgprot(PTE_RDONLY));
 }
-EXPORT_SYMBOL_GPL(set_memory_rw);
 
 int set_memory_nx(unsigned long addr, int numpages)
 {