[PATCH 2/2] powerpc/mm/64s: Drop p4d_leaf()

Christophe Leroy christophe.leroy at csgroup.eu
Sun Sep 4 01:11:34 AEST 2022



Le 03/09/2022 à 14:36, Michael Ellerman a écrit :
> Because 64-bit Book3S uses pgtable-nop4d.h, the P4D is folded into the
> PGD. So P4D entries are actually PGD entries, or vice versa.
> 
> The other way to think of it is that the P4D is a single entry page
> table below the PGD. Zero bits of the address are needed to index into
> the P4D, therefore a P4D entry maps the same size address space as a PGD
> entry.
> 
> As explained in the previous commit, there are no huge page sizes
> supported directly at the PGD level on 64-bit Book3S, so there are also
> no huge page sizes supported at the P4D level.
> 
> Therefore p4d_is_leaf() can never be true, so drop the definition and
> fallback to the default implementation that always returns false.

Then here as well, you are removing the only architecture which 
implements a non 'always false' version of p4d_leaf().

x86 has on that is always false:

#define p4d_leaf	p4d_large
static inline int p4d_large(p4d_t p4d)
{
	/* No 512 GiB pages yet */
	return 0;
}

So, should it be dropped as well and all uses removed from core mm ?

Christophe


More information about the Linuxppc-dev mailing list