diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/i386/kernel/vmlinux.lds.S | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/arch/i386/kernel/vmlinux.lds.S b/arch/i386/kernel/vmlinux.lds.S index 2d4f1386e2b1..1e7ac1c44ddc 100644 --- a/arch/i386/kernel/vmlinux.lds.S +++ b/arch/i386/kernel/vmlinux.lds.S | |||
@@ -13,6 +13,12 @@ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") | |||
13 | OUTPUT_ARCH(i386) | 13 | OUTPUT_ARCH(i386) |
14 | ENTRY(phys_startup_32) | 14 | ENTRY(phys_startup_32) |
15 | jiffies = jiffies_64; | 15 | jiffies = jiffies_64; |
16 | |||
17 | PHDRS { | ||
18 | text PT_LOAD FLAGS(5); /* R_E */ | ||
19 | data PT_LOAD FLAGS(7); /* RWE */ | ||
20 | note PT_NOTE FLAGS(4); /* R__ */ | ||
21 | } | ||
16 | SECTIONS | 22 | SECTIONS |
17 | { | 23 | { |
18 | . = __KERNEL_START; | 24 | . = __KERNEL_START; |
@@ -26,7 +32,7 @@ SECTIONS | |||
26 | KPROBES_TEXT | 32 | KPROBES_TEXT |
27 | *(.fixup) | 33 | *(.fixup) |
28 | *(.gnu.warning) | 34 | *(.gnu.warning) |
29 | } = 0x9090 | 35 | } :text = 0x9090 |
30 | 36 | ||
31 | _etext = .; /* End of text section */ | 37 | _etext = .; /* End of text section */ |
32 | 38 | ||
@@ -48,7 +54,7 @@ SECTIONS | |||
48 | .data : AT(ADDR(.data) - LOAD_OFFSET) { /* Data */ | 54 | .data : AT(ADDR(.data) - LOAD_OFFSET) { /* Data */ |
49 | *(.data) | 55 | *(.data) |
50 | CONSTRUCTORS | 56 | CONSTRUCTORS |
51 | } | 57 | } :data |
52 | 58 | ||
53 | . = ALIGN(4096); | 59 | . = ALIGN(4096); |
54 | __nosave_begin = .; | 60 | __nosave_begin = .; |
@@ -184,4 +190,6 @@ SECTIONS | |||
184 | STABS_DEBUG | 190 | STABS_DEBUG |
185 | 191 | ||
186 | DWARF_DEBUG | 192 | DWARF_DEBUG |
193 | |||
194 | NOTES | ||
187 | } | 195 | } |