diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-10-18 17:34:47 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-10-18 17:34:47 -0400 |
commit | a0a55682b83fd5f012afadcf415b030d7424ae68 (patch) | |
tree | 97ad3cb7e3443f09fbe55f57d3c36994b20a8e52 /arch/arm/kernel/vmlinux.lds.S | |
parent | 23beab76b490172a9ff3d52843e4d27a35b2a4c6 (diff) | |
parent | 865a4fae7793b80e2b8bca76e279d6dfecbeac17 (diff) |
Merge branch 'hotplug' into devel
Conflicts:
arch/arm/kernel/head-common.S
Diffstat (limited to 'arch/arm/kernel/vmlinux.lds.S')
-rw-r--r-- | arch/arm/kernel/vmlinux.lds.S | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S index 065d35de0e01..1953e3d21abf 100644 --- a/arch/arm/kernel/vmlinux.lds.S +++ b/arch/arm/kernel/vmlinux.lds.S | |||
@@ -8,6 +8,19 @@ | |||
8 | #include <asm/memory.h> | 8 | #include <asm/memory.h> |
9 | #include <asm/page.h> | 9 | #include <asm/page.h> |
10 | 10 | ||
11 | #define PROC_INFO \ | ||
12 | VMLINUX_SYMBOL(__proc_info_begin) = .; \ | ||
13 | *(.proc.info.init) \ | ||
14 | VMLINUX_SYMBOL(__proc_info_end) = .; | ||
15 | |||
16 | #ifdef CONFIG_HOTPLUG_CPU | ||
17 | #define ARM_CPU_DISCARD(x) | ||
18 | #define ARM_CPU_KEEP(x) x | ||
19 | #else | ||
20 | #define ARM_CPU_DISCARD(x) x | ||
21 | #define ARM_CPU_KEEP(x) | ||
22 | #endif | ||
23 | |||
11 | OUTPUT_ARCH(arm) | 24 | OUTPUT_ARCH(arm) |
12 | ENTRY(stext) | 25 | ENTRY(stext) |
13 | 26 | ||
@@ -31,9 +44,7 @@ SECTIONS | |||
31 | HEAD_TEXT | 44 | HEAD_TEXT |
32 | INIT_TEXT | 45 | INIT_TEXT |
33 | _einittext = .; | 46 | _einittext = .; |
34 | __proc_info_begin = .; | 47 | ARM_CPU_DISCARD(PROC_INFO) |
35 | *(.proc.info.init) | ||
36 | __proc_info_end = .; | ||
37 | __arch_info_begin = .; | 48 | __arch_info_begin = .; |
38 | *(.arch.info.init) | 49 | *(.arch.info.init) |
39 | __arch_info_end = .; | 50 | __arch_info_end = .; |
@@ -73,10 +84,8 @@ SECTIONS | |||
73 | /DISCARD/ : { | 84 | /DISCARD/ : { |
74 | *(.ARM.exidx.exit.text) | 85 | *(.ARM.exidx.exit.text) |
75 | *(.ARM.extab.exit.text) | 86 | *(.ARM.extab.exit.text) |
76 | #ifndef CONFIG_HOTPLUG_CPU | 87 | ARM_CPU_DISCARD(*(.ARM.exidx.cpuexit.text)) |
77 | *(.ARM.exidx.cpuexit.text) | 88 | ARM_CPU_DISCARD(*(.ARM.extab.cpuexit.text)) |
78 | *(.ARM.extab.cpuexit.text) | ||
79 | #endif | ||
80 | #ifndef CONFIG_HOTPLUG | 89 | #ifndef CONFIG_HOTPLUG |
81 | *(.ARM.exidx.devexit.text) | 90 | *(.ARM.exidx.devexit.text) |
82 | *(.ARM.extab.devexit.text) | 91 | *(.ARM.extab.devexit.text) |
@@ -105,6 +114,7 @@ SECTIONS | |||
105 | *(.glue_7) | 114 | *(.glue_7) |
106 | *(.glue_7t) | 115 | *(.glue_7t) |
107 | *(.got) /* Global offset table */ | 116 | *(.got) /* Global offset table */ |
117 | ARM_CPU_KEEP(PROC_INFO) | ||
108 | } | 118 | } |
109 | 119 | ||
110 | RO_DATA(PAGE_SIZE) | 120 | RO_DATA(PAGE_SIZE) |