aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/vmlinux.lds.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/vmlinux.lds.S')
-rw-r--r--arch/x86/kernel/vmlinux.lds.S33
1 files changed, 0 insertions, 33 deletions
diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
index 8f3a265476d7..0f703f10901a 100644
--- a/arch/x86/kernel/vmlinux.lds.S
+++ b/arch/x86/kernel/vmlinux.lds.S
@@ -71,7 +71,6 @@ PHDRS {
71 text PT_LOAD FLAGS(5); /* R_E */ 71 text PT_LOAD FLAGS(5); /* R_E */
72 data PT_LOAD FLAGS(6); /* RW_ */ 72 data PT_LOAD FLAGS(6); /* RW_ */
73#ifdef CONFIG_X86_64 73#ifdef CONFIG_X86_64
74 user PT_LOAD FLAGS(5); /* R_E */
75#ifdef CONFIG_SMP 74#ifdef CONFIG_SMP
76 percpu PT_LOAD FLAGS(6); /* RW_ */ 75 percpu PT_LOAD FLAGS(6); /* RW_ */
77#endif 76#endif
@@ -174,38 +173,6 @@ SECTIONS
174 173
175 . = ALIGN(__vvar_page + PAGE_SIZE, PAGE_SIZE); 174 . = ALIGN(__vvar_page + PAGE_SIZE, PAGE_SIZE);
176 175
177#define VSYSCALL_ADDR (-10*1024*1024)
178
179#define VLOAD_OFFSET (VSYSCALL_ADDR - __vsyscall_0 + LOAD_OFFSET)
180#define VLOAD(x) (ADDR(x) - VLOAD_OFFSET)
181
182#define VVIRT_OFFSET (VSYSCALL_ADDR - __vsyscall_0)
183#define VVIRT(x) (ADDR(x) - VVIRT_OFFSET)
184
185 __vsyscall_0 = .;
186
187 . = VSYSCALL_ADDR;
188 .vsyscall : AT(VLOAD(.vsyscall)) {
189 /* work around gold bug 13023 */
190 __vsyscall_beginning_hack = .;
191 *(.vsyscall_0)
192
193 . = __vsyscall_beginning_hack + 1024;
194 *(.vsyscall_1)
195
196 . = __vsyscall_beginning_hack + 2048;
197 *(.vsyscall_2)
198
199 . = __vsyscall_beginning_hack + 4096; /* Pad the whole page. */
200 } :user =0xcc
201 . = ALIGN(__vsyscall_0 + PAGE_SIZE, PAGE_SIZE);
202
203#undef VSYSCALL_ADDR
204#undef VLOAD_OFFSET
205#undef VLOAD
206#undef VVIRT_OFFSET
207#undef VVIRT
208
209#endif /* CONFIG_X86_64 */ 176#endif /* CONFIG_X86_64 */
210 177
211 /* Init code and data - will be freed after init */ 178 /* Init code and data - will be freed after init */