From: Christophe Leroy <christophe.leroy@xxxxxx> Subject: mm: fix RODATA_TEST failure "rodata_test: test data was not read only" On powerpc, RODATA_TEST fails with message the following messages: [ 6.199505] Freeing unused kernel memory: 528K [ 6.203935] rodata_test: test data was not read only This is because GCC allocates it to .data section: c0695034 g O .data 00000004 rodata_test_data Since 056b9d8a76924 ("mm: remove rodata_test_data export, add pr_fmt"), rodata_test_data is used only inside rodata_test.c By declaring it static, it gets properly allocated into .rodata section instead of .data: c04df710 l O .rodata 00000004 rodata_test_data Fixes: 056b9d8a76924 ("mm: remove rodata_test_data export, add pr_fmt") Link: http://lkml.kernel.org/r/20170921093729.1080368AC1@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxx> Cc: Kees Cook <keescook@xxxxxxxxxxxx> Cc: Jinbum Park <jinb.park7@xxxxxxxxx> Cc: Segher Boessenkool <segher@xxxxxxxxxxxxxxxxxxx> Cc: David Laight <David.Laight@xxxxxxxxxx> Cc: <stable@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/rodata_test.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -puN mm/rodata_test.c~mm-fix-rodata_test-failure-rodata_test-test-data-was-not-read-only mm/rodata_test.c --- a/mm/rodata_test.c~mm-fix-rodata_test-failure-rodata_test-test-data-was-not-read-only +++ a/mm/rodata_test.c @@ -14,7 +14,7 @@ #include <linux/uaccess.h> #include <asm/sections.h> -const int rodata_test_data = 0xC3; +static const int rodata_test_data = 0xC3; void rodata_test(void) { _