Re: [PATCH] powerpc/64e: Fix wrong test in __ptep_test_and_clear_young()

From: Michael Ellerman
Date: Tue Sep 05 2023 - 12:22:48 EST


Christophe Leroy <christophe.leroy@xxxxxxxxxx> writes:
> Commit 45201c879469 ("powerpc/nohash: Remove hash related code from
> nohash headers.") replaced:
>
> if ((pte_val(*ptep) & (_PAGE_ACCESSED | _PAGE_HASHPTE)) == 0)
> return 0;
>
> By:
>
> if (pte_young(*ptep))
> return 0;
>
> But it should be:
>
> if (!pte_young(*ptep))
> return 0;


That seems bad :)

But I don't know off the top of my head where
__ptep_test_and_clear_young() is used, and so what the symptoms could
be. Presumably nothing too bad or someone would have noticed?

cheers