Subject: Re: mpc83xx_restart() buggy

From: Scott Wood <[email-masked]>
Date: Fri, 29 Dec 2006 17:04:28 -0600

Kumar Gala wrote:
> On Dec 27, 2006, at 6:45 PM, Tjernlund wrote:
>>mpc83xx_restart() uses ioremap(), which doesn't like
>>beeing called while in IRQ context.
>>
>>Calling mpc83xx_restart() in IRQ context yields OOPS
>>which calls mpc83xx_restart() again and the loop never
>>termintes.
> 
> This is interesting, I know I've seen restart work properly w/o an  
> oops.  How are you causing the restart?

sysrq-b triggers it, as probably does crashing from an interrupt handler 
with panic_timeout nonzero.  You'll need CONFIG_DEBUG_SPINLOCK_SLEEP 
turned on, of course.

-Scott