linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/3] Generalize vmemmap_populate_hugepages to sparc
@ 2025-12-19 11:58 chengkaitao
  2025-12-19 11:58 ` [PATCH v4 1/3] sparc: Use vmemmap_populate_hugepages for vmemmap_populate chengkaitao
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: chengkaitao @ 2025-12-19 11:58 UTC (permalink / raw)
  To: davem, andreas, akpm, david, lorenzo.stoakes, Liam.Howlett,
	vbabka, rppt, surenb, mhocko
  Cc: kevin.brodsky, dave.hansen, ziy, chengkaitao, willy,
	zhengqi.arch, sparclinux, linux-kernel, linux-mm, chengkaitao

Change sparc's implementation of vmemmap_populate() using
vmemmap_populate_hugepages() to streamline the code. Another
benefit is that it allows us to eliminate the external declarations
of vmemmap_p?d_populate functions and convert them to static functions.

Since vmemmap_populate_hugepages may fallback to vmemmap_populate-
_basepages, which differs from sparc's original implementation.
During the v1 discussion with Mike Rapoport, sparc uses base pages
in the kernel page tables, so it should be able to use them in
vmemmap as well. Consequently, no additional special handling is
required.

Remove unnecessary whitespace from sparc.

Changes in v4:
- Add commit message
- Add verification that pmd actually maps a large page in the
vmemmap_check_pmd function

Changes in v3:
- Allow sparc to fallback to vmemmap_populate_basepages
- Convert vmemmap_p?d_populate() to static functions
- Split the v1 patch

Changes in v2:
- Revert the whitespace deletions
- Change vmemmap_false_pmd to vmemmap_pte_fallback_allowed

Link to V3:
https://lore.kernel.org/all/20251218174749.45965-1-pilgrimtao@gmail.com/
Link to V2:
https://lore.kernel.org/all/20251218130957.36892-1-pilgrimtao@gmail.com/
Link to V1:
https://lore.kernel.org/all/20251217120858.18713-1-pilgrimtao@gmail.com/

Chengkaitao (3):
  sparc: Use vmemmap_populate_hugepages for vmemmap_populate
  mm: Convert vmemmap_p?d_populate() to static functions
  sparc: Remove unnecessary whitespace

 arch/sparc/mm/fault_64.c   |  4 +--
 arch/sparc/mm/hypersparc.S |  4 +--
 arch/sparc/mm/init_64.c    | 53 ++++++++++++++------------------------
 arch/sparc/mm/io-unit.c    | 12 ++++-----
 arch/sparc/mm/iommu.c      |  2 +-
 arch/sparc/mm/swift.S      |  2 +-
 arch/sparc/mm/ultra.S      |  4 +--
 include/linux/mm.h         |  7 -----
 mm/sparse-vmemmap.c        | 10 +++----
 9 files changed, 38 insertions(+), 60 deletions(-)

-- 
2.50.1 (Apple Git-155)



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2025-12-28 21:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-12-19 11:58 [PATCH v4 0/3] Generalize vmemmap_populate_hugepages to sparc chengkaitao
2025-12-19 11:58 ` [PATCH v4 1/3] sparc: Use vmemmap_populate_hugepages for vmemmap_populate chengkaitao
2025-12-28 21:01   ` Mike Rapoport
2025-12-19 11:58 ` [PATCH v4 2/3] mm: Convert vmemmap_p?d_populate() to static functions chengkaitao
2025-12-28 21:00   ` Mike Rapoport
2025-12-19 11:58 ` [PATCH v4 3/3] sparc: Remove unnecessary whitespace chengkaitao

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox