Re: start_kernel(): bug: interrupts were enabled early

From: H. Peter Anvin
Date: Wed Mar 31 2010 - 18:40:41 EST


On 03/31/2010 03:31 PM, Benjamin Herrenschmidt wrote:
> On Wed, 2010-03-31 at 13:47 -0700, Yinghai Lu wrote:
>>> perhaps the second one isn't needed? Perhaps no architecture
>> requires
>>> that local interrupts be disabled across the above initialisations?
>>
>> spin_unlock_irq from arm is different from other archs?
>
> No, it's not, it will enable IRQs and thats illegal to do so early
> during boot. We've been over that one again and again, the problem is
> that people want to keep using that instead of irqsave/restore because
> it's a nano-optimisation on x86... oh well...
>

Well, guess what... the particular user in this case *isn't used at all
on x86* so it is a non-issue here. So I take it we have your particular
vote to use irqsave/irqrestore in lib/rwsem-spinlock.c?

-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/