Re: [v4,17/21] powerpc/8xx: set PTE bit 22 off TLBmiss

From: Scott Wood
Date: Tue Nov 25 2014 - 20:58:32 EST


On Tue, 2014-11-18 at 21:07 +0100, christophe leroy wrote:
> Le 08/11/2014 01:08, Scott Wood a Ãcrit :
> >
> > OK, so the _PAGE_KERNEL_RO(X) stuff is because initially setting the PTE
> > doesn't go through pte_update().
> >
> > I'll apply this, though it'd be cleaner to just have 8xx versions of the
> > relevant PTE accessor functions to maintain the PTE the way the hardware
> > wants (this would also eliminate the _PAGE_RW inversion that's still in
> > the TLB miss handler).
> >
> >
>
> Yes, I've been looking at a simple way to also eliminate the _PAGE_RW
> inversion, but i've not been able to find an easy solution up to now.
>
> It seems that we have two functions that set PTE: set_pte_at() and
> pte_update()
> I could perform the bit 22 (0x200) stuff and the _PAGE_RW invertion in
> both functions, but then there are functions that read the PTE to make
> decision based on PAGE_RW for instance.

Where? The only relevant use of _PAGE_RW outside accessors that I see
is in gup_pte_range(), which shouldn't be too hard to fix up.

-Scott


--
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/