]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mm: remove obsolete pgd_offset_gate()
authorFeng Lee <379943137@qq.com>
Fri, 9 May 2025 06:32:30 +0000 (14:32 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Tue, 13 May 2025 23:28:08 +0000 (16:28 -0700)
Remove pgd_offset_gate() completely and simply make the single caller use
pgd_offset().

It appears that the gate area resides in the kernel-mapped segment
exclusively on IA64.  Therefore, removing pgd_offset_k is safe since IA64
is now obsolete.

Link: https://lkml.kernel.org/r/tencent_503130C3CD56569191396268CF4D12F09A06@qq.com
Signed-off-by: Feng Lee <379943137@qq.com>
Reviewed-by: Barry Song <baohua@kernel.org>
Acked-by: David Hildenbrand <david@redhat.com>
Cc: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: bibo mao <maobibo@loongson.cn>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Cc: John Hubbard <jhubbard@nvidia.com>
Cc: Lance Yang <lance.yang@linux.dev>
Cc: Peter Xu <peterx@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/pgtable.h
mm/gup.c

index b50447ef1c921ce80b5561056ccdee636a6af950..f1e890b60460948b9b621791bdbe1cd2940b47ae 100644 (file)
@@ -1164,10 +1164,6 @@ static inline void arch_swap_restore(swp_entry_t entry, struct folio *folio)
 }
 #endif
 
-#ifndef __HAVE_ARCH_PGD_OFFSET_GATE
-#define pgd_offset_gate(mm, addr)      pgd_offset(mm, addr)
-#endif
-
 #ifndef __HAVE_ARCH_MOVE_PTE
 #define move_pte(pte, old_addr, new_addr)      (pte)
 #endif
index d3aac58862c04ebf3852d92b31f6554e83371618..329c5f7acc7a02fa60ca094700ce4e4561f74698 100644 (file)
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -1102,10 +1102,7 @@ static int get_gate_page(struct mm_struct *mm, unsigned long address,
        /* user gate pages are read-only */
        if (gup_flags & FOLL_WRITE)
                return -EFAULT;
-       if (address > TASK_SIZE)
-               pgd = pgd_offset_k(address);
-       else
-               pgd = pgd_offset_gate(mm, address);
+       pgd = pgd_offset(mm, address);
        if (pgd_none(*pgd))
                return -EFAULT;
        p4d = p4d_offset(pgd, address);