[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <tencent_503130C3CD56569191396268CF4D12F09A06@qq.com>
Date: Fri, 9 May 2025 14:32:30 +0800
From: Feng Lee <379943137@...com>
To: david@...hat.com,
baohua@...nel.org,
21cnbao@...il.com,
akpm@...ux-foundation.org,
mingo@...nel.org,
jgg@...pe.ca,
jhubbard@...dia.com,
peterx@...hat.com
Cc: maobibo@...ngson.cn,
trivial@...nel.org,
linux-kernel@...r.kernel.org,
lance.yang@...ux.dev,
anshuman.khandual@....com,
Feng Lee <379943137@...com>
Subject: [PATCH v3] mm: remove obsolete pgd_offset_gate()
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.
Signed-off-by: Feng Lee <379943137@...com>
---
Changes in v3:
- adopt more precise subject descriptions
Changes in v2:
- remove pgd_offset_gate completely
- remove pgd_offset_k from the get_gate_page function completely
---
include/linux/pgtable.h | 4 ----
mm/gup.c | 5 +----
2 files changed, 1 insertion(+), 8 deletions(-)
diff --git a/include/linux/pgtable.h b/include/linux/pgtable.h
index b50447ef1c92..f1e890b60460 100644
--- a/include/linux/pgtable.h
+++ b/include/linux/pgtable.h
@@ -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
diff --git a/mm/gup.c b/mm/gup.c
index f32168339390..0685403fe510 100644
--- a/mm/gup.c
+++ b/mm/gup.c
@@ -1101,10 +1101,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);
--
2.49.0
Powered by blists - more mailing lists