[PATCH v1 0/4] Fix uprobe pte be overwritten when expanding vma

Pu Lehui posted 4 patches 8 months, 2 weeks ago
mm/mremap.c                            |  2 ++
mm/vma.c                               | 20 ++++++++++--
mm/vma.h                               |  7 +++++
tools/testing/selftests/mm/ksm_tests.c | 32 ++------------------
tools/testing/selftests/mm/merge.c     | 42 ++++++++++++++++++++++++++
tools/testing/selftests/mm/thuge-gen.c |  6 ++--
tools/testing/selftests/mm/vm_util.c   | 38 +++++++++++++++++++++++
tools/testing/selftests/mm/vm_util.h   |  2 ++
8 files changed, 113 insertions(+), 36 deletions(-)
[PATCH v1 0/4] Fix uprobe pte be overwritten when expanding vma
Posted by Pu Lehui 8 months, 2 weeks ago
From: Pu Lehui <pulehui@huawei.com>

patch 1: the mainly fix for uprobe pte be overwritten issue.
patch 2: WARN_ON_ONCE for new_pte not NULL during move_ptes.
patch 3: extract some utils function for upcomming selftest.
patch 4: selftest related to this series.

v1:
- limit skip uprobe_mmap to copy_vma flow.
- add related selftest.
- correct Fixes tag.

RFC v2:
https://lore.kernel.org/all/20250527132351.2050820-1-pulehui@huaweicloud.com/
- skip uprobe_mmap on expanded vma.
- add skip_vma_uprobe field to struct vma_prepare and
  vma_merge_struct. (Lorenzo)
- add WARN_ON_ONCE when new_pte is not NULL. (Oleg)
- Corrected some of the comments.

RFC v1:
https://lore.kernel.org/all/20250521092503.3116340-1-pulehui@huaweicloud.com/

Pu Lehui (4):
  mm: Fix uprobe pte be overwritten when expanding vma
  mm: Expose abnormal new_pte during move_ptes
  selftests/mm: Extract read_sysfs and write_sysfs into vm_util
  selftests/mm: Add test about uprobe pte be orphan during vma merge

 mm/mremap.c                            |  2 ++
 mm/vma.c                               | 20 ++++++++++--
 mm/vma.h                               |  7 +++++
 tools/testing/selftests/mm/ksm_tests.c | 32 ++------------------
 tools/testing/selftests/mm/merge.c     | 42 ++++++++++++++++++++++++++
 tools/testing/selftests/mm/thuge-gen.c |  6 ++--
 tools/testing/selftests/mm/vm_util.c   | 38 +++++++++++++++++++++++
 tools/testing/selftests/mm/vm_util.h   |  2 ++
 8 files changed, 113 insertions(+), 36 deletions(-)

-- 
2.34.1