44x _tlbie() ME/CE/DE disabling unnecessary?

Benjamin Herrenschmidt benh at kernel.crashing.org
Fri Oct 31 07:14:00 EST 2008


On Thu, 2008-10-30 at 13:04 -0500, Hollis Blanchard wrote:
> 
> I don't think it's necessary at all to disable ME/CE/DE inside
> _tlbie() on 440, because the interrupt handlers for those types save
> and restore MMUCR (they're all the same code path; see
> mcheck_transfer_to_handler in entry_32.S).

This was written before the saving of MMUCR was added I think.

> However, I think EE does need to be disabled, since the normal EE
> handler doesn't deal with MMUCR. So instead of all these MSR
> manipulations, I think a simple wrteei 0/1 pair should do the trick?
> Or maybe mfmsr/wrteei/wrtee, in case _tlbie() happens to be called
> with interrupts disabled already.

Yes.

Ben.





More information about the Linuxppc-dev mailing list