[PATCH v2 0/3] mm/hugetlb_vmemmap: Fix HVO races and deadlock
From: Muchun Song
Date: Wed Nov 11 2026 - 04:39:22 EST
This series fixes three HVO issues reported by Sashiko.
The first patch serializes HWPoison updates against HVO remapping so
raw_hwp_page state is not lost while a replacement vmemmap head page is
being installed. The second patch uses an HVO-private rwsem to prevent
deferred PMD splits from racing with PTE remapping before the TLB flush.
The last patch switches the vmemmap walk to the lockless walker so a PMD
split allocation cannot recurse into init_mm.mmap_lock through reclaim.
v2:
- Add the HWPoison serialization fix reported by Sashiko.
- Use an HVO-private rwsem for deferred PMD split serialization.
- Add the lockless page-table walk fix for the PMD split deadlock.
v1: https://lore.kernel.org/20261110112456.62827-1-songmuchun@xxxxxxxxxxxxx/
Muchun Song (3):
mm/hugetlb_vmemmap: fix lost HWPoison state during optimization
mm/hugetlb_vmemmap: fix PMD split TLB flush race
mm/hugetlb_vmemmap: fix deadlock during PMD split
mm/hugetlb_vmemmap.c | 28 +++++++++++++++++++++++-----
mm/hugetlb_vmemmap.h | 24 ++++++++++++++++++++++++
mm/memory-failure.c | 2 ++
3 files changed, 49 insertions(+), 5 deletions(-)
base-commit: 2dc0136b1fdac153434ab02778fcdb32db5d0dae
--
2.54.0