On 3 Jul 2025, at 2:06, Aboorva Devarajan wrote: > From: Donet Tom <[email protected]> > > PowerPC64 supports a 4PB virtual address space, but this test was > previously limited to 512TB. This patch extends the coverage up to > the full 4PB VA range on PowerPC64. > > Memory from 0 to 128TB is allocated without an address hint, while > allocations from 128TB to 4PB use a hint address. > > Signed-off-by: Donet Tom <[email protected]> > Signed-off-by: Aboorva Devarajan <[email protected]> > --- > tools/testing/selftests/mm/virtual_address_range.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/tools/testing/selftests/mm/virtual_address_range.c > b/tools/testing/selftests/mm/virtual_address_range.c > index e24c36a39f22..619acf0b9239 100644 > --- a/tools/testing/selftests/mm/virtual_address_range.c > +++ b/tools/testing/selftests/mm/virtual_address_range.c > @@ -50,6 +50,7 @@ > #define NR_CHUNKS_256TB (NR_CHUNKS_128TB * 2UL) > #define NR_CHUNKS_384TB (NR_CHUNKS_128TB * 3UL) > #define NR_CHUNKS_3840TB (NR_CHUNKS_128TB * 30UL) > +#define NR_CHUNKS_3968TB (NR_CHUNKS_128TB * 31UL) > > #define ADDR_MARK_128TB (1UL << 47) /* First address beyond 128TB */ > #define ADDR_MARK_256TB (1UL << 48) /* First address beyond 256TB */ > @@ -59,6 +60,11 @@ > #define HIGH_ADDR_SHIFT 49 > #define NR_CHUNKS_LOW NR_CHUNKS_256TB > #define NR_CHUNKS_HIGH NR_CHUNKS_3840TB > +#elif defined(__PPC64__) > +#define HIGH_ADDR_MARK ADDR_MARK_128TB > +#define HIGH_ADDR_SHIFT 48 > +#define NR_CHUNKS_LOW NR_CHUNKS_128TB > +#define NR_CHUNKS_HIGH NR_CHUNKS_3968TB > #else > #define HIGH_ADDR_MARK ADDR_MARK_128TB > #define HIGH_ADDR_SHIFT 48
Could you also update the comment above this code to say PowerPC64 also supports 4PB virtual address space? >From the comment, arm64 supports 4PB but its NR_CHUNKS_HIGH is only 3840TB, whereas PowerPC64 here can get to 3968TB. I do not know why arm64’s 4PB is smaller. ;) Otherwise, the patch looks good to me. Reviewed-by: Zi Yan <[email protected]> Best Regards, Yan, Zi

