Re: [PATCH v4 4/7] mm/x86: Make pud_leaf() only care about PSE bit

Thomas Gleixner
2024-08-07T22:22:41Z

On Wed, Aug 07 2024 at 15:48, Peter Xu wrote:
> An entry should be reported as PUD leaf even if it's PROT_NONE, in which
> case PRESENT bit isn't there. I hit bad pud without this when testing dax
> 1G on zapping a PROT_NONE PUD.

That does not qualify as a change log. What you hit is irrelevant unless
you explain the actual underlying problem. See Documentation/process/
including the TIP documentation.

> diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h
> index e39311a89bf4..a2a3bd4c1bda 100644
> --- a/arch/x86/include/asm/pgtable.h
> +++ b/arch/x86/include/asm/pgtable.h
> @@ -1078,8 +1078,7 @@ static inline pmd_t *pud_pgtable(pud_t pud)
> #define pud_leaf pud_leaf
> static inline bool pud_leaf(pud_t pud)
> {
> - return (pud_val(pud) & (_PAGE_PSE | _PAGE_PRESENT)) ==
> - (_PAGE_PSE | _PAGE_PRESENT);
> + return pud_val(pud) & _PAGE_PSE;
> }

And the changelog does not explain why this change is not affecting any
existing user of pud_leaf().

Thanks,

tglx