On Tue, 2016-13-09 at 06:40:07 UTC, Balbir Singh wrote: > __tlbie and __tlbiel are out of sync. __tlbie does the right thing > it calls tlbie with "tlbie rb, L" if CPU_FTR_ARCH_206 (cpu feature) is clear > and with "tlbie rb" otherwise. During the cleanup of __tlbiel I noticed > that __tlbiel was setting bit 11 PPC_BIT(21) independent of the ISA > version for non-4k (L) pages. This patch fixes that issue. It also changes > the current PPC_TLBIEL to PPC_TLBIEL_5 and introduces a new PPC_TLBIEL similar > to PPC_TLBIE.
This should give more description of what the problem is, ie. we're setting a bit in the instruction which is reserved on some processors, before talking about the solution or what tlbie does. > The arguments to PPC_TLBIE have also been changed/switched in order > to be consistent with the actual assembly usage for clearer reading > of code. The whole thing should be split in 3 patches: One which fixes the buglet where we set L=1 on 2.06 and 2.07. One which renames PPC_TLBIEL() to PPC_TLBIEL_5(). One which switches the order of the arguments to PPC_TLBIEL(). Also do we even need a macro for the two argument form? We've had uses of the two argument tlbie since 2011, so I suspect the assembler will happily accept it? cheers