powerpc/mm/64s: Restrict THP to Radix or HPT w/64K pages
authorMichael Ellerman <mpe@ellerman.id.au>
Fri, 23 Aug 2024 03:29:11 +0000 (13:29 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Thu, 5 Sep 2024 12:29:57 +0000 (22:29 +1000)
commit87def77bb5f4b61d47538a34bb2b2cb7db3c037b
tree9c90c7779f005ee2d438258117a73dcb5b4a6fda
parentf61d413a1c1feaa4cd04fca840564ab90124bec4
powerpc/mm/64s: Restrict THP to Radix or HPT w/64K pages

Transparent hugepages (THP) are not supported when using the Hash Page
Table (HPT) MMU with 4K pages.

Currently a HPT-only 4K kernel still allows THP to be enabled, which
is misleading.

Add restrictions to the PPC_THP symbol so that if the kernel is
configured with 4K pages and only the HPT MMU (no Radix), then THP is
disabled.

Note that it's still possible to build a combined Radix/HPT kernel with 4K
pages, which does allow THP to be enabled at build time. As such the HPT
code still needs to provide some THP related symbols, to allow the build
to succeed, but those code paths are never run. See the stubs in
arch/powerpc/include/asm/book3s/64/hash-4k.h.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/20240823032911.1238471-2-mpe@ellerman.id.au
arch/powerpc/platforms/Kconfig.cputype