diff options
author | Arjan van de Ven <arjan@infradead.org> | 2006-01-06 03:12:01 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-06 11:33:36 -0500 |
commit | 37b73c828185731f6236a6387c02d7b08c150810 (patch) | |
tree | 312b9f082f78072aba62ee2230e417928156873e /include/asm-generic | |
parent | d89c145c0344fe2180336af6a309a59a8bc8c1c0 (diff) |
[PATCH] x86/x86_64: mark rodata section read only: generic infrastructure
Generic prep-work for marking the .rodata section readonly:
* Align the rodata section at 4Kb boundary
* call the mark_rodata_ro() function when available
Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: Andi Kleen <ak@muc.de>
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-generic')
-rw-r--r-- | include/asm-generic/vmlinux.lds.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index 094d4917c1a9..35de20cf8fac 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h | |||
@@ -10,6 +10,8 @@ | |||
10 | #define ALIGN_FUNCTION() . = ALIGN(8) | 10 | #define ALIGN_FUNCTION() . = ALIGN(8) |
11 | 11 | ||
12 | #define RODATA \ | 12 | #define RODATA \ |
13 | . = ALIGN(4096); \ | ||
14 | __start_rodata = .; \ | ||
13 | .rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \ | 15 | .rodata : AT(ADDR(.rodata) - LOAD_OFFSET) { \ |
14 | *(.rodata) *(.rodata.*) \ | 16 | *(.rodata) *(.rodata.*) \ |
15 | *(__vermagic) /* Kernel version magic */ \ | 17 | *(__vermagic) /* Kernel version magic */ \ |
@@ -74,6 +76,8 @@ | |||
74 | __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \ | 76 | __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \ |
75 | *(__ksymtab_strings) \ | 77 | *(__ksymtab_strings) \ |
76 | } \ | 78 | } \ |
79 | __end_rodata = .; \ | ||
80 | . = ALIGN(4096); \ | ||
77 | \ | 81 | \ |
78 | /* Built-in module parameters. */ \ | 82 | /* Built-in module parameters. */ \ |
79 | __param : AT(ADDR(__param) - LOAD_OFFSET) { \ | 83 | __param : AT(ADDR(__param) - LOAD_OFFSET) { \ |