pte_alloc_map() expects to be followed by pte_unmap(), but hugetlb omits
that: to keep balance in future, use the recently added pte_alloc_huge()
instead; with pte_offset_huge() a better name for pte_offset_kernel().

Signed-off-by: Hugh Dickins <hu...@google.com>
Reviewed-by: Alexandre Ghiti <alexgh...@rivosinc.com>
Acked-by: Palmer Dabbelt <pal...@rivosync.com>
---
 arch/riscv/mm/hugetlbpage.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/riscv/mm/hugetlbpage.c b/arch/riscv/mm/hugetlbpage.c
index e0ef56dc57b9..542883b3b49b 100644
--- a/arch/riscv/mm/hugetlbpage.c
+++ b/arch/riscv/mm/hugetlbpage.c
@@ -67,7 +67,7 @@ pte_t *huge_pte_alloc(struct mm_struct *mm,
 
        for_each_napot_order(order) {
                if (napot_cont_size(order) == sz) {
-                       pte = pte_alloc_map(mm, pmd, addr & 
napot_cont_mask(order));
+                       pte = pte_alloc_huge(mm, pmd, addr & 
napot_cont_mask(order));
                        break;
                }
        }
@@ -114,7 +114,7 @@ pte_t *huge_pte_offset(struct mm_struct *mm,
 
        for_each_napot_order(order) {
                if (napot_cont_size(order) == sz) {
-                       pte = pte_offset_kernel(pmd, addr & 
napot_cont_mask(order));
+                       pte = pte_offset_huge(pmd, addr & 
napot_cont_mask(order));
                        break;
                }
        }
-- 
2.35.3

Reply via email to