diff options
author | Geoffrey Thomas <geofft@ksplice.com> | 2009-09-18 15:52:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-18 16:57:18 -0400 |
commit | 3240a77b515f4a15e24d8a3a2135bc87b02cf1d6 (patch) | |
tree | 202ac615c4b6dfb4ad32b5048fb53397c2f67c60 | |
parent | 9c88b25bcfde51eccf2cca13d933a2948d0ca4eb (diff) |
sparc: Clean up linker script using new linker script macros.
Signed-off-by: Geoffrey Thomas <geofft@ksplice.com>
Signed-off-by: Tim Abbott <tabbott@ksplice.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | arch/sparc/kernel/vmlinux.lds.S | 75 |
1 files changed, 7 insertions, 68 deletions
diff --git a/arch/sparc/kernel/vmlinux.lds.S b/arch/sparc/kernel/vmlinux.lds.S index 866390feb683..4e5992593967 100644 --- a/arch/sparc/kernel/vmlinux.lds.S +++ b/arch/sparc/kernel/vmlinux.lds.S | |||
@@ -51,70 +51,27 @@ SECTIONS | |||
51 | _etext = .; | 51 | _etext = .; |
52 | 52 | ||
53 | RO_DATA(PAGE_SIZE) | 53 | RO_DATA(PAGE_SIZE) |
54 | .data : { | ||
55 | DATA_DATA | ||
56 | CONSTRUCTORS | ||
57 | } | ||
58 | .data1 : { | 54 | .data1 : { |
59 | *(.data1) | 55 | *(.data1) |
60 | } | 56 | } |
61 | . = ALIGN(SMP_CACHE_BYTES); | 57 | RW_DATA_SECTION(SMP_CACHE_BYTES, 0, THREAD_SIZE) |
62 | .data.cacheline_aligned : { | 58 | |
63 | *(.data.cacheline_aligned) | ||
64 | } | ||
65 | . = ALIGN(SMP_CACHE_BYTES); | ||
66 | .data.read_mostly : { | ||
67 | *(.data.read_mostly) | ||
68 | } | ||
69 | /* End of data section */ | 59 | /* End of data section */ |
70 | _edata = .; | 60 | _edata = .; |
71 | 61 | ||
72 | /* init_task */ | ||
73 | . = ALIGN(THREAD_SIZE); | ||
74 | .data.init_task : { | ||
75 | *(.data.init_task) | ||
76 | } | ||
77 | .fixup : { | 62 | .fixup : { |
78 | __start___fixup = .; | 63 | __start___fixup = .; |
79 | *(.fixup) | 64 | *(.fixup) |
80 | __stop___fixup = .; | 65 | __stop___fixup = .; |
81 | } | 66 | } |
82 | . = ALIGN(16); | 67 | EXCEPTION_TABLE(16) |
83 | __ex_table : { | ||
84 | __start___ex_table = .; | ||
85 | *(__ex_table) | ||
86 | __stop___ex_table = .; | ||
87 | } | ||
88 | NOTES | 68 | NOTES |
89 | 69 | ||
90 | . = ALIGN(PAGE_SIZE); | 70 | . = ALIGN(PAGE_SIZE); |
91 | .init.text : { | 71 | __init_begin = ALIGN(PAGE_SIZE); |
92 | __init_begin = .; | 72 | INIT_TEXT_SECTION(PAGE_SIZE) |
93 | _sinittext = .; | ||
94 | INIT_TEXT | ||
95 | _einittext = .; | ||
96 | } | ||
97 | __init_text_end = .; | 73 | __init_text_end = .; |
98 | .init.data : { | 74 | INIT_DATA_SECTION(16) |
99 | INIT_DATA | ||
100 | } | ||
101 | . = ALIGN(16); | ||
102 | .init.setup : { | ||
103 | __setup_start = .; | ||
104 | *(.init.setup) | ||
105 | __setup_end = .; | ||
106 | } | ||
107 | .initcall.init : { | ||
108 | __initcall_start = .; | ||
109 | INITCALLS | ||
110 | __initcall_end = .; | ||
111 | } | ||
112 | .con_initcall.init : { | ||
113 | __con_initcall_start = .; | ||
114 | *(.con_initcall.init) | ||
115 | __con_initcall_end = .; | ||
116 | } | ||
117 | SECURITY_INIT | ||
118 | 75 | ||
119 | . = ALIGN(4); | 76 | . = ALIGN(4); |
120 | .tsb_ldquad_phys_patch : { | 77 | .tsb_ldquad_phys_patch : { |
@@ -146,29 +103,11 @@ SECTIONS | |||
146 | __sun4v_2insn_patch_end = .; | 103 | __sun4v_2insn_patch_end = .; |
147 | } | 104 | } |
148 | 105 | ||
149 | #ifdef CONFIG_BLK_DEV_INITRD | ||
150 | . = ALIGN(PAGE_SIZE); | ||
151 | .init.ramfs : { | ||
152 | __initramfs_start = .; | ||
153 | *(.init.ramfs) | ||
154 | __initramfs_end = .; | ||
155 | } | ||
156 | #endif | ||
157 | |||
158 | PERCPU(PAGE_SIZE) | 106 | PERCPU(PAGE_SIZE) |
159 | 107 | ||
160 | . = ALIGN(PAGE_SIZE); | 108 | . = ALIGN(PAGE_SIZE); |
161 | __init_end = .; | 109 | __init_end = .; |
162 | __bss_start = .; | 110 | BSS_SECTION(0, 0, 0) |
163 | .sbss : { | ||
164 | *(.sbss) | ||
165 | *(.scommon) | ||
166 | } | ||
167 | .bss : { | ||
168 | *(.dynbss) | ||
169 | *(.bss) | ||
170 | *(COMMON) | ||
171 | } | ||
172 | _end = . ; | 111 | _end = . ; |
173 | 112 | ||
174 | STABS_DEBUG | 113 | STABS_DEBUG |