2.6.15-mm4 failure on power5

Nathan Lynch ntl at pobox.com
Wed Jan 18 18:28:15 EST 2006


Andrew Morton wrote:
> Ingo Molnar <mingo at elte.hu> wrote:
> > - so buggy early bootup code which relies on interrupts being 
> > off might be surprised by it.
> 
> I don't think it's necessarily buggy that bootup code needs interrupts
> disabled.  It _is_ buggy that bootup code which needs interrupts disabled
> is calling lock_cpu_hotplug().

I guess I don't understand -- why is it wrong for code that runs only
in early early bootup, when there is only one process context, to use
common code to e.g. register a hotplug cpu notifier?  Should the
powerpc numa code be made to wait to register its notifier until
initcall time or something?

> > The fact that you observed that it's 
> > somehow related to the timer interrupt seems to strengthen this 
> > suspicion. DEBUG_MUTEXES=n on the other hand should have no such 
> > interrupt-enabling effects.
> > 
> > [ if this indeed is the case then i'll add irqs_off() checks to
> >   DEBUG_MUTEXES=y, to ensure that the mutex APIs are never called with 
> >   interrupts disabled. ]
> 
> Yes, I suppose so.  But we're already calling might_sleep(), and
> might_sleep() checks for that.  Perhaps the might_sleep() check is being
> defeated by the nasty system_running check.

Yes, which would be why this code never triggered a warning when
cpucontrol was a semaphore.



More information about the Linuxppc64-dev mailing list