[PATCH RFC 0/7] "NAND on UPM" and related patches

Scott Wood scottwood at freescale.com
Thu Dec 13 08:13:59 EST 2007


Scott Wood wrote:
> Anton Vorontsov wrote:
>> As the compromise I might suggest this: forbid pattern_start/pattern_end
>> from the ISRs (by marking them as might_sleep()), and replace _irqsave
>> spinlock with simple spinlock.
> 
> No, you cannot use a bare spinlock with IRQs enabled.  You'll deadlock 
> on SMP, and you'll have races with preemption enabled.

Sorry, brain fart...  obviously, with preemption on it'd disable 
preemption even with a plain spinlock, and on SMP without preemption 
it's not an issue.

Still, all you're getting rid of is the MSR twiddling, which should be 
pretty minor.

-Scott



More information about the Linuxppc-dev mailing list