From: Shaohua Li <shaohua.li@intel.com>
To: "Anvin, H Peter" <h.peter.anvin@intel.com>
Cc: Ingo Molnar <mingo@elte.hu>,
Markus Trippelsdorf <markus@trippelsdorf.de>,
"Lu, Hongjiu" <hongjiu.lu@intel.com>,
Linus Torvalds <torvalds@linux-foundation.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Sam Ravnborg <sam@ravnborg.org>
Subject: RE: Linux 2.6.38-rc1 doesn't boot
Date: Fri, 21 Jan 2011 15:18:59 +0800 [thread overview]
Message-ID: <1295594339.1949.936.camel@sli10-conroe> (raw)
In-Reply-To: <ADDEBCD9C145E542A8688C29F1FBDCB9C915F59E@orsmsx502.amr.corp.intel.com>
On Thu, 2011-01-20 at 23:08 +0800, Anvin, H Peter wrote:
> (The patch will need to be paired with removing the hacks in the linker script.)
>
> -----Original Message-----
> From: Ingo Molnar [mailto:mingo@elte.hu]
> Sent: Thursday, January 20, 2011 3:26 AM
> To: Li, Shaohua
> Cc: Anvin, H Peter; Markus Trippelsdorf; Lu, Hongjiu; Linus Torvalds; Linux Kernel Mailing List; Sam Ravnborg
> Subject: Re: Linux 2.6.38-rc1 doesn't boot
>
>
> * Shaohua Li <shaohua.li@intel.com> wrote:
>
> > it's not a build failure, without it, my i386 kernel can't boot
> > actually.
>
> Please try hpa's patch in this thread on top of very latest (today's) -git or latest
> -tip:
>
> http://people.redhat.com/mingo/tip.git/README
>
> Does that result in a booting system? That way we can avoid most of the linker
> script madness.
Need some changes to make it compile and work on both 32 and 64 bit
kernel. below one is working for me:
diff --git a/arch/x86/kernel/vmlinux.lds.S b/arch/x86/kernel/vmlinux.lds.S
index bf47007..d8f1c6d 100644
--- a/arch/x86/kernel/vmlinux.lds.S
+++ b/arch/x86/kernel/vmlinux.lds.S
@@ -34,11 +34,9 @@ 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)
@@ -203,6 +201,7 @@ SECTIONS
*(.jiffies)
}
jiffies = VVIRT(.jiffies);
+ jiffies_64 = jiffies;
.vsyscall_3 ADDR(.vsyscall_0) + 3072: AT(VLOAD(.vsyscall_3)) {
*(.vsyscall_3)
diff --git a/kernel/timer.c b/kernel/timer.c
index 43ca993..36cb5e3 100644
--- a/kernel/timer.c
+++ b/kernel/timer.c
@@ -41,6 +41,7 @@
#include <linux/sched.h>
#include <linux/slab.h>
+#include <asm/byteorder.h>
#include <asm/uaccess.h>
#include <asm/unistd.h>
#include <asm/div64.h>
@@ -53,6 +54,11 @@
u64 jiffies_64 __cacheline_aligned_in_smp = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
+#if defined(__LITTLE_ENDIAN) || (BITS_PER_LONG >= 64)
+asm(".global jiffies; jiffies = jiffies_64");
+#else
+asm(".global jiffies; jiffies = jiffies_64 + 4");
+#endif
/*
* per-CPU timer vector definitions:
next prev parent reply other threads:[~2011-01-21 7:19 UTC|newest]
Thread overview: 73+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-18 23:54 Linux 2.6.38-rc1 Linus Torvalds
2011-01-19 2:07 ` Linus Torvalds
2011-01-19 3:42 ` Justin Mattock
2011-01-19 3:53 ` Linus Torvalds
2011-01-19 4:05 ` Justin Mattock
2011-01-19 5:10 ` nobody
2011-01-19 5:42 ` Linus Torvalds
2011-01-19 5:56 ` Linus Torvalds
2011-01-19 18:07 ` Steven Rostedt
2011-01-19 18:26 ` Linus Torvalds
2011-01-21 3:23 ` tag&track [Re: Linux 2.6.38-rc1] nobody
2011-01-21 8:24 ` Alexey Dobriyan
2011-01-23 8:13 ` Linux 2.6.38-rc1 Török Edwin
2011-01-19 7:39 ` Linux 2.6.38-rc1 doesn't boot Markus Trippelsdorf
2011-01-19 7:46 ` Shaohua Li
2011-01-19 7:55 ` Markus Trippelsdorf
2011-01-19 7:49 ` Markus Trippelsdorf
2011-01-19 8:12 ` Shaohua Li
2011-01-19 8:56 ` H. Peter Anvin
2011-01-19 9:09 ` Ingo Molnar
2011-01-20 2:08 ` Shaohua Li
2011-01-20 3:32 ` Lu, Hongjiu
2011-01-20 11:25 ` Ingo Molnar
2011-01-20 15:08 ` Anvin, H Peter
2011-01-21 7:18 ` Shaohua Li [this message]
2011-01-21 7:55 ` Shaohua Li
2011-01-21 15:28 ` H. Peter Anvin
2011-01-21 15:37 ` Lu, Hongjiu
2011-01-21 21:09 ` Ingo Molnar
2011-01-19 9:33 ` [tip:x86/urgent] Revert "x86: Make relocatable kernel work with new binutils" tip-bot for Ingo Molnar
2011-01-20 4:59 ` Linux 2.6.38-rc1 doesn't boot Alexandre Courbot
2011-01-19 8:39 ` PPS parport boot lockup: INFO: HARDIRQ-READ-safe -> HARDIRQ-READ-unsafe lock order detected Ingo Molnar
2011-01-20 13:04 ` Alexander Gordeev
2011-01-21 14:44 ` Alexander Gordeev
2011-01-21 16:37 ` Linus Torvalds
2011-01-21 19:43 ` Ingo Molnar
2011-01-24 23:28 ` Alexander Gordeev
2011-01-24 23:46 ` [PATCH] pps: claim parallel port exclusively Alexander Gordeev
2011-01-25 0:19 ` Ingo Molnar
2011-01-24 15:00 ` PPS parport boot lockup: INFO: HARDIRQ-READ-safe -> HARDIRQ-READ-unsafe lock order detected Alexander Gordeev
2011-01-24 15:12 ` [PATCH] parport: make lockdep happy with waitlist_lock Alexander Gordeev
2011-01-24 15:28 ` Ingo Molnar
2011-01-24 15:33 ` Alexander Gordeev
2011-01-19 12:02 ` percpu related boot crash on x86 (was: Linux 2.6.38-rc1) Ingo Molnar
2011-01-19 12:44 ` Tejun Heo
2011-01-19 12:48 ` Peter Zijlstra
2011-01-19 12:56 ` Pekka Enberg
2011-01-19 13:12 ` Peter Zijlstra
2011-01-19 13:13 ` Tejun Heo
2011-01-19 20:53 ` Ingo Molnar
2011-01-19 23:11 ` Ingo Molnar
2011-01-20 8:31 ` percpu related boot crash on x86 Pekka Enberg
2011-01-20 10:47 ` Peter Zijlstra
2011-01-20 11:12 ` Eric Dumazet
2011-01-20 11:19 ` Tejun Heo
2011-01-20 11:06 ` [PATCH 1/2] lockdep: move early boot local IRQ enable/disable status to init/main.c Tejun Heo
2011-01-20 11:07 ` [PATCH 2/2] smp: allow on_each_cpu() to be called while early_boot_irqs_disabled " Tejun Heo
2011-01-20 20:22 ` [tip:core/urgent] smp: Allow " tip-bot for Tejun Heo
2011-01-20 11:11 ` [PATCH 1/2] lockdep: move early boot local IRQ enable/disable " Tejun Heo
2011-01-20 11:23 ` Peter Zijlstra
2011-01-20 11:26 ` Tejun Heo
2011-01-20 11:30 ` Pekka Enberg
2011-01-20 11:38 ` Peter Zijlstra
2011-01-20 12:00 ` Ingo Molnar
2011-01-20 12:20 ` [PATCH UPDATED " Tejun Heo
2011-01-20 11:51 ` [PATCH " Ingo Molnar
2011-01-20 20:21 ` [tip:core/urgent] lockdep: Move " tip-bot for Tejun Heo
2011-01-19 21:40 ` Linux 2.6.38-rc1 Alan Cox
2011-01-21 15:30 ` Aaro Koskinen
-- strict thread matches above, loose matches on Subject: below --
2011-01-19 8:32 Linux 2.6.38-rc1 doesn't boot Sedat Dilek
2011-01-19 12:31 ` H.J. Lu
2011-01-19 14:03 ` Jeff Chua
2011-01-21 16:06 Anvin, H Peter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1295594339.1949.936.camel@sli10-conroe \
--to=shaohua.li@intel.com \
--cc=h.peter.anvin@intel.com \
--cc=hongjiu.lu@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=markus@trippelsdorf.de \
--cc=mingo@elte.hu \
--cc=sam@ravnborg.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox