On Fri, Aug 29, 2008 at 08:56:50AM -0500, Kumar Gala wrote: > +_GLOBAL(_tlbil_all) > +#define MMUCSR0_TLBFI (MMUCSR0_TLB0FI | MMUCSR0_TLB1FI | \ > + MMUCSR0_TLB2FI | MMUCSR0_TLB3FI) > + li r3,(MMUCSR0_TLBFI)@l > + mtspr SPRN_MMUCSR0, r3 > +1: > + mfspr r3,SPRN_MMUCSR0 > + andi. r3,r3,[EMAIL PROTECTED] > + bne 1b > + blr > + > +/* > + * Flush MMU TLB for a particular process id, but only on the local processor > + * (no broadcast) > + */ > +_GLOBAL(_tlbil_pid) > + li r3,(MMUCSR0_TLBFI)@l > + mtspr SPRN_MMUCSR0, r3 > +1: > + mfspr r3,SPRN_MMUCSR0 > + andi. r1,r2,[EMAIL PROTECTED] > + bne 1b > + blr
I'm guessing _tlbil_pid is never called, as it will clobber the stack pointer. Should probably just point both function names at the same implementation, since PID-specific invalidation isn't supported on non-tlbilx cores. -Scott _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev