lkml.org 
[lkml]   [2007]   [Dec]   [3]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
FromThomas Gleixner <>
DateMon, 3 Dec 2007 09:17:22 +0100 (CET)
SubjectRe: Fedora's latest gcc produces unbootable kernels
> On Sat, 1 Dec 2007 18:47:52 +0100
> Pierre Ossman <drzeus-list@drzeus.cx> wrote:
>> > The latest GCC in Fedora rawhide contains some serious bug (or
>> provokes a latent one in the kernel) that makes every kernel built
>> unbootable. It just locks up halfway through the init. Kernels that
>> previously worked fine all now experience the same symptom. Even RH's
>> own kernels exhibit this. The kernel built Nov 24th works, Nov 26th
>> doesn't. gcc was updated 26th, 14 hours earlier.
>> >
>>
>> Digging a bit further, it is indeed the high-res stuff (the first
>> missing message) that hangs. If I hard code the kernel to just be
>> non-high-res capable, it boots, but time keeping is horribly broken.
>>
>> Anyway, hopefully this means I'll soon have the object file that gets
>> miscompiled. Jakub also pointed me to an older gcc RPM so that I can
>> produce an object file with that as well and see what differs.
>>
>
> I've now pinpointed where it hangs. And it doesn't hang in fact. It gets
> stuck in an infinite loop in tick_setup_sched_timer():
>
> 	for (;;) {
> 		hrtimer_forward(&ts->sched_timer, now, tick_period);
> 		hrtimer_start(&ts->sched_timer, ts->sched_timer.expires,
> 			      HRTIMER_MODE_ABS);
> 		/* Check, if the timer was already in the past */
> 		if (hrtimer_active(&ts->sched_timer))
> 			break;
> 		now = ktime_get();
> 	}
>
> I've added Thomas as cc as this is his domain, so perhaps he has some idea
> what the compiler does wrong here. I've also included the two object files
> (one good, one bad). HEAD is v2.6.24-rc3.

I looked at the disassembly but I can not spot the problem.

I think the real problem is somewhere else. Likely candidates are
hrtimer_forward() or hrtimer_start() - in that order.

Thanks,

      tglx

P.S.: I have restricted network access today, so I can not reproduce my self.



\
 
 \ /
  Last update: 2007-12-03 09:21    [from the cache]
©2003-2008