OSDN Git Service

riscv: mm: support Svnapot in hugetlb page
authorQinglin Pan <panqinglin2020@iscas.ac.cn>
Thu, 9 Feb 2023 13:16:46 +0000 (21:16 +0800)
committerPalmer Dabbelt <palmer@rivosinc.com>
Wed, 8 Mar 2023 03:39:16 +0000 (19:39 -0800)
commit82a1a1f3bfb628c4a44652349b94c66c7e8be7c9
tree5948a143d42878d05f8c6ff7a1c4e1f206604571
parent23ad288aaf153a78b042e10062be1a6284909f95
riscv: mm: support Svnapot in hugetlb page

Svnapot can be used to support 64KB hugetlb page, so it can become a new
option when using hugetlbfs. Add a basic implementation of hugetlb page,
and support 64KB as a size in it by using Svnapot.

For test, boot kernel with command line contains "default_hugepagesz=64K
hugepagesz=64K hugepages=20" and run a simple test like this:

tools/testing/selftests/vm/map_hugetlb 1 16

And it should be passed.

Signed-off-by: Qinglin Pan <panqinglin00@gmail.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Link: https://lore.kernel.org/r/20230209131647.17245-3-panqinglin00@gmail.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/Kconfig
arch/riscv/include/asm/hugetlb.h
arch/riscv/mm/hugetlbpage.c