1
0
Fork 0

i386: Put allocated ELF notes in read-only data segment

This changes the i386 linker script and the asm-generic macro it uses so that
ELF note sections with SHF_ALLOC set are linked into the kernel image along
with other read-only data.  The PT_NOTE also points to their location.

This paves the way for putting useful build-time information into ELF notes
that can be found easily later in a kernel memory dump.

Signed-off-by: Roland McGrath <roland@redhat.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
hifive-unleashed-5.1
Roland McGrath 2007-07-19 01:48:36 -07:00 committed by Linus Torvalds
parent b38bd33a6b
commit cbe87121f1
2 changed files with 8 additions and 4 deletions

View File

@ -60,7 +60,9 @@ SECTIONS
__stop___ex_table = .;
}
BUG_TABLE
NOTES :text :note
BUG_TABLE :text
. = ALIGN(4);
.tracedata : AT(ADDR(.tracedata) - LOAD_OFFSET) {
@ -208,6 +210,4 @@ SECTIONS
STABS_DEBUG
DWARF_DEBUG
NOTES
}

View File

@ -224,7 +224,11 @@
}
#define NOTES \
.notes : { *(.note.*) } :note
.notes : AT(ADDR(.notes) - LOAD_OFFSET) { \
VMLINUX_SYMBOL(__start_notes) = .; \
*(.note.*) \
VMLINUX_SYMBOL(__stop_notes) = .; \
}
#define INITCALLS \
*(.initcall0.init) \