diff options
Diffstat (limited to 'arch/x86/kernel/vmlinux_32.lds.S')
-rw-r--r-- | arch/x86/kernel/vmlinux_32.lds.S | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/arch/x86/kernel/vmlinux_32.lds.S b/arch/x86/kernel/vmlinux_32.lds.S index ce5ed083a1e9..a9b8560adbc2 100644 --- a/arch/x86/kernel/vmlinux_32.lds.S +++ b/arch/x86/kernel/vmlinux_32.lds.S | |||
@@ -49,23 +49,14 @@ SECTIONS | |||
49 | _etext = .; /* End of text section */ | 49 | _etext = .; /* End of text section */ |
50 | } :text = 0x9090 | 50 | } :text = 0x9090 |
51 | 51 | ||
52 | NOTES :text :note | ||
53 | |||
52 | . = ALIGN(16); /* Exception table */ | 54 | . = ALIGN(16); /* Exception table */ |
53 | __ex_table : AT(ADDR(__ex_table) - LOAD_OFFSET) { | 55 | __ex_table : AT(ADDR(__ex_table) - LOAD_OFFSET) { |
54 | __start___ex_table = .; | 56 | __start___ex_table = .; |
55 | *(__ex_table) | 57 | *(__ex_table) |
56 | __stop___ex_table = .; | 58 | __stop___ex_table = .; |
57 | } | 59 | } :text = 0x9090 |
58 | |||
59 | NOTES :text :note | ||
60 | |||
61 | BUG_TABLE :text | ||
62 | |||
63 | . = ALIGN(4); | ||
64 | .tracedata : AT(ADDR(.tracedata) - LOAD_OFFSET) { | ||
65 | __tracedata_start = .; | ||
66 | *(.tracedata) | ||
67 | __tracedata_end = .; | ||
68 | } | ||
69 | 60 | ||
70 | RODATA | 61 | RODATA |
71 | 62 | ||
@@ -149,10 +140,10 @@ SECTIONS | |||
149 | *(.con_initcall.init) | 140 | *(.con_initcall.init) |
150 | __con_initcall_end = .; | 141 | __con_initcall_end = .; |
151 | } | 142 | } |
152 | .x86cpuvendor.init : AT(ADDR(.x86cpuvendor.init) - LOAD_OFFSET) { | 143 | .x86_cpu_dev.init : AT(ADDR(.x86_cpu_dev.init) - LOAD_OFFSET) { |
153 | __x86cpuvendor_start = .; | 144 | __x86_cpu_dev_start = .; |
154 | *(.x86cpuvendor.init) | 145 | *(.x86_cpu_dev.init) |
155 | __x86cpuvendor_end = .; | 146 | __x86_cpu_dev_end = .; |
156 | } | 147 | } |
157 | SECURITY_INIT | 148 | SECURITY_INIT |
158 | . = ALIGN(4); | 149 | . = ALIGN(4); |
@@ -189,6 +180,7 @@ SECTIONS | |||
189 | . = ALIGN(PAGE_SIZE); | 180 | . = ALIGN(PAGE_SIZE); |
190 | .data.percpu : AT(ADDR(.data.percpu) - LOAD_OFFSET) { | 181 | .data.percpu : AT(ADDR(.data.percpu) - LOAD_OFFSET) { |
191 | __per_cpu_start = .; | 182 | __per_cpu_start = .; |
183 | *(.data.percpu.page_aligned) | ||
192 | *(.data.percpu) | 184 | *(.data.percpu) |
193 | *(.data.percpu.shared_aligned) | 185 | *(.data.percpu.shared_aligned) |
194 | __per_cpu_end = .; | 186 | __per_cpu_end = .; |
@@ -218,3 +210,11 @@ SECTIONS | |||
218 | 210 | ||
219 | DWARF_DEBUG | 211 | DWARF_DEBUG |
220 | } | 212 | } |
213 | |||
214 | #ifdef CONFIG_KEXEC | ||
215 | /* Link time checks */ | ||
216 | #include <asm/kexec.h> | ||
217 | |||
218 | ASSERT(kexec_control_code_size <= KEXEC_CONTROL_CODE_MAX_SIZE, | ||
219 | "kexec control code size is too big") | ||
220 | #endif | ||