Message ID | 20240815030403.832489-1-zhangchunyan@iscas.ac.cn (mailing list archive) |
---|---|
Headers | show |
Series | riscv: mm: Add soft-dirty and uffd-wp support | expand |
On Thu, 15 Aug 2024 at 11:04, Chunyan Zhang <zhangchunyan@iscas.ac.cn> wrote: > > This patchset adds soft dirty and userfaultfd write protect tracking support > for RISC-V. > > As described in the patches, we are trying to utilize only one free PTE > bit(9) to support three kernel features (devmap, soft-dirty, uffd-wp). > Users cannot have them supported at the same time (have to select > one when building the kernel). > > This patchset has been tested with: > 1) The kselftest mm suite in which soft-dirty, madv_populate, test_unmerge_uffd_wp, > and uffd-unit-tests run and pass, and no regressions are observed in any of the > other tests. > > 2) CRIU: > - 'criu check --feature mem_dirty_track' returns supported; > - incremental_dumps[1] and simple_loop [2] dump and restores work fine; > - zdtm test suite can run under host mode. > > V4: > - Added bit(4) descriptions into "Format of swap PTE". > > V3: > - Fixed the issue reported by kernel test irobot <lkp@intel.com>. > > V1 -> V2: > - Add uffd-wp supported; > - Make soft-dirty uffd-wp and devmap mutually exclusive which all use the same PTE bit; > - Add test results of CRIU in the cover-letter. > > [1] https://www.criu.org/Incremental_dumps > [2] https://asciinema.org/a/232445 > > Chunyan Zhang (3): > riscv: mm: Prepare for reusing PTE RSW bit(9) > riscv: mm: Add soft-dirty page tracking support > riscv: mm: Add uffd write-protect support > > arch/riscv/Kconfig | 34 ++++++- > arch/riscv/include/asm/pgtable-64.h | 2 +- > arch/riscv/include/asm/pgtable-bits.h | 31 ++++++ > arch/riscv/include/asm/pgtable.h | 133 +++++++++++++++++++++++++- > 4 files changed, 197 insertions(+), 3 deletions(-) > This patchset applies on top of v6.11-rc1. > -- > 2.34.1 >