aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/vmlinux.lds.S
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2009-07-03 18:13:18 -0400
committerTejun Heo <tj@kernel.org>2009-07-03 18:13:18 -0400
commitc43768cbb7655ea5ff782ae250f6e2ef4297cf98 (patch)
tree3982e41dde3eecaa3739a5d1a8ed18d04bd74f01 /arch/arm/kernel/vmlinux.lds.S
parent1a8dd307cc0a2119be4e578c517795464e6dabba (diff)
parent746a99a5af60ee676afa2ba469ccd1373493c7e7 (diff)
Merge branch 'master' into for-next
Pull linus#master to merge PER_CPU_DEF_ATTRIBUTES and alpha build fix changes. As alpha in percpu tree uses 'weak' attribute instead of inline assembly, there's no need for __used attribute. Conflicts: arch/alpha/include/asm/percpu.h arch/mn10300/kernel/vmlinux.lds.S include/linux/percpu-defs.h
Diffstat (limited to 'arch/arm/kernel/vmlinux.lds.S')
-rw-r--r--arch/arm/kernel/vmlinux.lds.S23
1 files changed, 16 insertions, 7 deletions
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S
index e256c57b8981..5cc4812c9763 100644
--- a/arch/arm/kernel/vmlinux.lds.S
+++ b/arch/arm/kernel/vmlinux.lds.S
@@ -6,6 +6,7 @@
6#include <asm-generic/vmlinux.lds.h> 6#include <asm-generic/vmlinux.lds.h>
7#include <asm/thread_info.h> 7#include <asm/thread_info.h>
8#include <asm/memory.h> 8#include <asm/memory.h>
9#include <asm/page.h>
9 10
10OUTPUT_ARCH(arm) 11OUTPUT_ARCH(arm)
11ENTRY(stext) 12ENTRY(stext)
@@ -63,7 +64,7 @@ SECTIONS
63 usr/built-in.o(.init.ramfs) 64 usr/built-in.o(.init.ramfs)
64 __initramfs_end = .; 65 __initramfs_end = .;
65#endif 66#endif
66 . = ALIGN(4096); 67 . = ALIGN(PAGE_SIZE);
67 __per_cpu_load = .; 68 __per_cpu_load = .;
68 __per_cpu_start = .; 69 __per_cpu_start = .;
69 *(.data.percpu.page_aligned) 70 *(.data.percpu.page_aligned)
@@ -73,7 +74,7 @@ SECTIONS
73#ifndef CONFIG_XIP_KERNEL 74#ifndef CONFIG_XIP_KERNEL
74 __init_begin = _stext; 75 __init_begin = _stext;
75 INIT_DATA 76 INIT_DATA
76 . = ALIGN(4096); 77 . = ALIGN(PAGE_SIZE);
77 __init_end = .; 78 __init_end = .;
78#endif 79#endif
79 } 80 }
@@ -85,6 +86,14 @@ SECTIONS
85 *(.discard) 86 *(.discard)
86 *(.ARM.exidx.exit.text) 87 *(.ARM.exidx.exit.text)
87 *(.ARM.extab.exit.text) 88 *(.ARM.extab.exit.text)
89#ifndef CONFIG_HOTPLUG_CPU
90 *(.ARM.exidx.cpuexit.text)
91 *(.ARM.extab.cpuexit.text)
92#endif
93#ifndef CONFIG_HOTPLUG
94 *(.ARM.exidx.devexit.text)
95 *(.ARM.extab.devexit.text)
96#endif
88#ifndef CONFIG_MMU 97#ifndef CONFIG_MMU
89 *(.fixup) 98 *(.fixup)
90 *(__ex_table) 99 *(__ex_table)
@@ -111,7 +120,7 @@ SECTIONS
111 *(.got) /* Global offset table */ 120 *(.got) /* Global offset table */
112 } 121 }
113 122
114 RODATA 123 RO_DATA(PAGE_SIZE)
115 124
116 _etext = .; /* End of text and rodata section */ 125 _etext = .; /* End of text and rodata section */
117 126
@@ -151,17 +160,17 @@ SECTIONS
151 *(.data.init_task) 160 *(.data.init_task)
152 161
153#ifdef CONFIG_XIP_KERNEL 162#ifdef CONFIG_XIP_KERNEL
154 . = ALIGN(4096); 163 . = ALIGN(PAGE_SIZE);
155 __init_begin = .; 164 __init_begin = .;
156 INIT_DATA 165 INIT_DATA
157 . = ALIGN(4096); 166 . = ALIGN(PAGE_SIZE);
158 __init_end = .; 167 __init_end = .;
159#endif 168#endif
160 169
161 . = ALIGN(4096); 170 . = ALIGN(PAGE_SIZE);
162 __nosave_begin = .; 171 __nosave_begin = .;
163 *(.data.nosave) 172 *(.data.nosave)
164 . = ALIGN(4096); 173 . = ALIGN(PAGE_SIZE);
165 __nosave_end = .; 174 __nosave_end = .;
166 175
167 /* 176 /*