64 lines
1.9 KiB
Diff
64 lines
1.9 KiB
Diff
From 6b35eb9ddcddde7b510726de03fae071178f1ec4 Mon Sep 17 00:00:00 2001
|
|
From: Ingo Molnar <mingo@elte.hu>
|
|
Date: Wed, 19 Jan 2011 10:09:42 +0100
|
|
Subject: [PATCH] Revert "x86: Make relocatable kernel work with new binutils"
|
|
|
|
This reverts commit 86b1e8dd83cb ("x86: Make relocatable kernel work with
|
|
new binutils").
|
|
|
|
Markus Trippelsdorf reported a boot failure caused by this patch.
|
|
|
|
The real solution to the original patch will likely involve an
|
|
arch-generic solution to define an overlaid jiffies_64 and jiffies
|
|
variables.
|
|
|
|
Until that's done and tested on all architectures revert this commit to
|
|
solve the regression.
|
|
|
|
Reported-and-bisected-by: Markus Trippelsdorf <markus@trippelsdorf.de>
|
|
Acked-by: "H. Peter Anvin" <hpa@zytor.com>
|
|
Cc: Shaohua Li <shaohua.li@intel.com>
|
|
Cc: "Lu, Hongjiu" <hongjiu.lu@intel.com>
|
|
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
|
|
Cc: Sam Ravnborg <sam@ravnborg.org>
|
|
LKML-Reference: <4D36A759.60704@intel.com>
|
|
Signed-off-by: Ingo Molnar <mingo@elte.hu>
|
|
---
|
|
arch/x86/kernel/vmlinux.lds.S | 11 ++---------
|
|
1 files changed, 2 insertions(+), 9 deletions(-)
|
|
|
|
diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
|
|
index b34ab80..bf47007 100644
|
|
--- a/arch/x86/kernel/vmlinux.lds.S
|
|
+++ b/arch/x86/kernel/vmlinux.lds.S
|
|
@@ -34,9 +34,11 @@ OUTPUT_FORMAT(CONFIG_OUTPUT_FORMAT, CONFIG_OUTPUT_FORMAT, CONFIG_OUTPUT_FORMAT)
|
|
#ifdef CONFIG_X86_32
|
|
OUTPUT_ARCH(i386)
|
|
ENTRY(phys_startup_32)
|
|
+jiffies = jiffies_64;
|
|
#else
|
|
OUTPUT_ARCH(i386:x86-64)
|
|
ENTRY(phys_startup_64)
|
|
+jiffies_64 = jiffies;
|
|
#endif
|
|
|
|
#if defined(CONFIG_X86_64) && defined(CONFIG_DEBUG_RODATA)
|
|
@@ -140,15 +142,6 @@ SECTIONS
|
|
CACHELINE_ALIGNED_DATA(L1_CACHE_BYTES)
|
|
|
|
DATA_DATA
|
|
- /*
|
|
- * Workaround a binutils (2.20.51.0.12 to 2.21.51.0.3) bug.
|
|
- * This makes jiffies relocatable in such binutils
|
|
- */
|
|
-#ifdef CONFIG_X86_32
|
|
- jiffies = jiffies_64;
|
|
-#else
|
|
- jiffies_64 = jiffies;
|
|
-#endif
|
|
CONSTRUCTORS
|
|
|
|
/* rarely changed data like cpu maps */
|
|
--
|
|
1.7.3.5
|
|
|