Merge patch series "riscv, mm: detect svnapot cpu support at runtime"
authorPalmer Dabbelt <palmer@rivosinc.com>
Thu, 9 Mar 2023 23:46:40 +0000 (15:46 -0800)
committerPalmer Dabbelt <palmer@rivosinc.com>
Fri, 10 Mar 2023 02:13:45 +0000 (18:13 -0800)
commit4a4c459872f154acf872dfa6baf5d1edabd52323
treeadba067144e374f7bff2061c644e8cc7313e80b2
parentfe15c26ee26efa11741a7b632e9f23b01aca4cc6
parentce173474cf19fe7fbe8f0fc74e3c81ec9c3d9807
Merge patch series "riscv, mm: detect svnapot cpu support at runtime"

Qinglin Pan <panqinglin00@gmail.com> says:

Svnapot is a RISC-V extension for marking contiguous 4K pages as a non-4K
page. This patch set is for using Svnapot in hugetlb fs and huge vmap.

This patchset adds a Kconfig item for using Svnapot in
"Platform type"->"SVNAPOT extension support". Its default value is on,
and people can set it off if they don't allow kernel to detect Svnapot
hardware support and leverage it.

Tested on:
  - qemu rv64 with "Svnapot support" off and svnapot=true.
  - qemu rv64 with "Svnapot support" on and svnapot=true.
  - qemu rv64 with "Svnapot support" off and svnapot=false.
  - qemu rv64 with "Svnapot support" on and svnapot=false.

* b4-shazam-merge:
  riscv: mm: support Svnapot in huge vmap
  riscv: mm: support Svnapot in hugetlb page
  riscv: mm: modify pte format for Svnapot

Link: https://lore.kernel.org/r/20230209131647.17245-1-panqinglin00@gmail.com
[Palmer: fix up the feature ordering in the merge]
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/Kconfig
arch/riscv/include/asm/hwcap.h
arch/riscv/include/asm/page.h
arch/riscv/include/asm/pgtable.h
arch/riscv/kernel/cpu.c
arch/riscv/kernel/cpufeature.c