diff options
Diffstat (limited to 'arch/ia64')
-rw-r--r-- | arch/ia64/kernel/vmlinux.lds.S | 109 |
1 files changed, 11 insertions, 98 deletions
diff --git a/arch/ia64/kernel/vmlinux.lds.S b/arch/ia64/kernel/vmlinux.lds.S index b484b86da830..f69f411516d5 100644 --- a/arch/ia64/kernel/vmlinux.lds.S +++ b/arch/ia64/kernel/vmlinux.lds.S | |||
@@ -64,14 +64,7 @@ SECTIONS | |||
64 | NOTES :code :note /* put .notes in text and mark in PT_NOTE */ | 64 | NOTES :code :note /* put .notes in text and mark in PT_NOTE */ |
65 | code_continues : {} :code /* switch back to regular program... */ | 65 | code_continues : {} :code /* switch back to regular program... */ |
66 | 66 | ||
67 | /* Exception table */ | 67 | EXCEPTION_TABLE(16) |
68 | . = ALIGN(16); | ||
69 | __ex_table : AT(ADDR(__ex_table) - LOAD_OFFSET) | ||
70 | { | ||
71 | __start___ex_table = .; | ||
72 | *(__ex_table) | ||
73 | __stop___ex_table = .; | ||
74 | } | ||
75 | 68 | ||
76 | /* MCA table */ | 69 | /* MCA table */ |
77 | . = ALIGN(16); | 70 | . = ALIGN(16); |
@@ -113,38 +106,9 @@ SECTIONS | |||
113 | 106 | ||
114 | . = ALIGN(PAGE_SIZE); | 107 | . = ALIGN(PAGE_SIZE); |
115 | __init_begin = .; | 108 | __init_begin = .; |
116 | .init.text : AT(ADDR(.init.text) - LOAD_OFFSET) | ||
117 | { | ||
118 | _sinittext = .; | ||
119 | INIT_TEXT | ||
120 | _einittext = .; | ||
121 | } | ||
122 | |||
123 | .init.data : AT(ADDR(.init.data) - LOAD_OFFSET) | ||
124 | { INIT_DATA } | ||
125 | |||
126 | #ifdef CONFIG_BLK_DEV_INITRD | ||
127 | .init.ramfs : AT(ADDR(.init.ramfs) - LOAD_OFFSET) | ||
128 | { | ||
129 | __initramfs_start = .; | ||
130 | *(.init.ramfs) | ||
131 | __initramfs_end = .; | ||
132 | } | ||
133 | #endif | ||
134 | 109 | ||
135 | . = ALIGN(16); | 110 | INIT_TEXT_SECTION(PAGE_SIZE) |
136 | .init.setup : AT(ADDR(.init.setup) - LOAD_OFFSET) | 111 | INIT_DATA_SECTION(16) |
137 | { | ||
138 | __setup_start = .; | ||
139 | *(.init.setup) | ||
140 | __setup_end = .; | ||
141 | } | ||
142 | .initcall.init : AT(ADDR(.initcall.init) - LOAD_OFFSET) | ||
143 | { | ||
144 | __initcall_start = .; | ||
145 | INITCALLS | ||
146 | __initcall_end = .; | ||
147 | } | ||
148 | 112 | ||
149 | .data.patch.vtop : AT(ADDR(.data.patch.vtop) - LOAD_OFFSET) | 113 | .data.patch.vtop : AT(ADDR(.data.patch.vtop) - LOAD_OFFSET) |
150 | { | 114 | { |
@@ -202,22 +166,9 @@ SECTIONS | |||
202 | } | 166 | } |
203 | #endif | 167 | #endif |
204 | 168 | ||
205 | . = ALIGN(8); | ||
206 | __con_initcall_start = .; | ||
207 | .con_initcall.init : AT(ADDR(.con_initcall.init) - LOAD_OFFSET) | ||
208 | { *(.con_initcall.init) } | ||
209 | __con_initcall_end = .; | ||
210 | __security_initcall_start = .; | ||
211 | .security_initcall.init : AT(ADDR(.security_initcall.init) - LOAD_OFFSET) | ||
212 | { *(.security_initcall.init) } | ||
213 | __security_initcall_end = .; | ||
214 | . = ALIGN(PAGE_SIZE); | 169 | . = ALIGN(PAGE_SIZE); |
215 | __init_end = .; | 170 | __init_end = .; |
216 | 171 | ||
217 | /* The initial task and kernel stack */ | ||
218 | .data.init_task : AT(ADDR(.data.init_task) - LOAD_OFFSET) | ||
219 | { *(.data.init_task) } | ||
220 | |||
221 | .data.page_aligned : AT(ADDR(.data.page_aligned) - LOAD_OFFSET) | 172 | .data.page_aligned : AT(ADDR(.data.page_aligned) - LOAD_OFFSET) |
222 | { | 173 | { |
223 | PAGE_ALIGNED_DATA(PAGE_SIZE) | 174 | PAGE_ALIGNED_DATA(PAGE_SIZE) |
@@ -236,12 +187,6 @@ SECTIONS | |||
236 | * kernel data | 187 | * kernel data |
237 | */ | 188 | */ |
238 | 189 | ||
239 | .data.read_mostly : AT(ADDR(.data.read_mostly) - LOAD_OFFSET) | ||
240 | { *(.data.read_mostly) } | ||
241 | |||
242 | .data.cacheline_aligned : AT(ADDR(.data.cacheline_aligned) - LOAD_OFFSET) | ||
243 | { *(.data.cacheline_aligned) } | ||
244 | |||
245 | /* Per-cpu data: */ | 190 | /* Per-cpu data: */ |
246 | . = ALIGN(PERCPU_PAGE_SIZE); | 191 | . = ALIGN(PERCPU_PAGE_SIZE); |
247 | PERCPU_VADDR(PERCPU_ADDR, :percpu) | 192 | PERCPU_VADDR(PERCPU_ADDR, :percpu) |
@@ -258,6 +203,9 @@ SECTIONS | |||
258 | __cpu0_per_cpu = .; | 203 | __cpu0_per_cpu = .; |
259 | . = . + PERCPU_PAGE_SIZE; /* cpu0 per-cpu space */ | 204 | . = . + PERCPU_PAGE_SIZE; /* cpu0 per-cpu space */ |
260 | #endif | 205 | #endif |
206 | INIT_TASK_DATA(PAGE_SIZE) | ||
207 | CACHELINE_ALIGNED_DATA(SMP_CACHE_BYTES) | ||
208 | READ_MOSTLY_DATA(SMP_CACHE_BYTES) | ||
261 | DATA_DATA | 209 | DATA_DATA |
262 | *(.data1) | 210 | *(.data1) |
263 | *(.gnu.linkonce.d*) | 211 | *(.gnu.linkonce.d*) |
@@ -274,49 +222,14 @@ SECTIONS | |||
274 | .sdata : AT(ADDR(.sdata) - LOAD_OFFSET) | 222 | .sdata : AT(ADDR(.sdata) - LOAD_OFFSET) |
275 | { *(.sdata) *(.sdata1) *(.srdata) } | 223 | { *(.sdata) *(.sdata1) *(.srdata) } |
276 | _edata = .; | 224 | _edata = .; |
277 | __bss_start = .; | 225 | |
278 | .sbss : AT(ADDR(.sbss) - LOAD_OFFSET) | 226 | BSS_SECTION(0, 0, 0) |
279 | { *(.sbss) *(.scommon) } | ||
280 | .bss : AT(ADDR(.bss) - LOAD_OFFSET) | ||
281 | { *(.bss) *(COMMON) } | ||
282 | __bss_stop = .; | ||
283 | 227 | ||
284 | _end = .; | 228 | _end = .; |
285 | 229 | ||
286 | code : { } :code | 230 | code : { } :code |
287 | /* Stabs debugging sections. */ | 231 | |
288 | .stab 0 : { *(.stab) } | 232 | STABS_DEBUG |
289 | .stabstr 0 : { *(.stabstr) } | 233 | DWARF_DEBUG |
290 | .stab.excl 0 : { *(.stab.excl) } | ||
291 | .stab.exclstr 0 : { *(.stab.exclstr) } | ||
292 | .stab.index 0 : { *(.stab.index) } | ||
293 | .stab.indexstr 0 : { *(.stab.indexstr) } | ||
294 | /* DWARF debug sections. | ||
295 | Symbols in the DWARF debugging sections are relative to the beginning | ||
296 | of the section so we begin them at 0. */ | ||
297 | /* DWARF 1 */ | ||
298 | .debug 0 : { *(.debug) } | ||
299 | .line 0 : { *(.line) } | ||
300 | /* GNU DWARF 1 extensions */ | ||
301 | .debug_srcinfo 0 : { *(.debug_srcinfo) } | ||
302 | .debug_sfnames 0 : { *(.debug_sfnames) } | ||
303 | /* DWARF 1.1 and DWARF 2 */ | ||
304 | .debug_aranges 0 : { *(.debug_aranges) } | ||
305 | .debug_pubnames 0 : { *(.debug_pubnames) } | ||
306 | /* DWARF 2 */ | ||
307 | .debug_info 0 : { *(.debug_info) } | ||
308 | .debug_abbrev 0 : { *(.debug_abbrev) } | ||
309 | .debug_line 0 : { *(.debug_line) } | ||
310 | .debug_frame 0 : { *(.debug_frame) } | ||
311 | .debug_str 0 : { *(.debug_str) } | ||
312 | .debug_loc 0 : { *(.debug_loc) } | ||
313 | .debug_macinfo 0 : { *(.debug_macinfo) } | ||
314 | /* SGI/MIPS DWARF 2 extensions */ | ||
315 | .debug_weaknames 0 : { *(.debug_weaknames) } | ||
316 | .debug_funcnames 0 : { *(.debug_funcnames) } | ||
317 | .debug_typenames 0 : { *(.debug_typenames) } | ||
318 | .debug_varnames 0 : { *(.debug_varnames) } | ||
319 | /* These must appear regardless of . */ | ||
320 | /DISCARD/ : { *(.comment) } | ||
321 | /DISCARD/ : { *(.note) } | 234 | /DISCARD/ : { *(.note) } |
322 | } | 235 | } |