aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc
diff options
context:
space:
mode:
authorGeoffrey Thomas <geofft@ksplice.com>2009-09-18 15:52:09 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-09-18 16:57:18 -0400
commit3240a77b515f4a15e24d8a3a2135bc87b02cf1d6 (patch)
tree202ac615c4b6dfb4ad32b5048fb53397c2f67c60 /arch/sparc
parent9c88b25bcfde51eccf2cca13d933a2948d0ca4eb (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>
Diffstat (limited to 'arch/sparc')
-rw-r--r--arch/sparc/kernel/vmlinux.lds.S75
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