[PATCH 0/3] riscv: mm: clean up and optimize some page table get-and-clear functions

Paul Walmsley pjw at kernel.org
Wed Nov 19 20:18:27 PST 2025


This series implements some minor cleanups on the RISC-V page table
get-and-clear functions.  We continue the work from commit
546e42c8c6d94 ("riscv: Use an atomic xchg in
pudp_huge_get_and_clear()").  The two themes are:

- avoid atomic operations on non-SMP kernels

- use xchg() rather than atomic_long_xchg() on variables that aren't
  atomic_long_t

Tested on QEMU 10.0.6 on RV32 and RV64, SMP and !SMP, running kselftests.


- Paul

Paul Walmsley (3):
  riscv: mm: pmdp_huge_get_and_clear(): avoid atomic ops when
    !CONFIG_SMP
  riscv: mm: ptep_get_and_clear(): avoid atomic ops when !CONFIG_SMP
  riscv: mm: use xchg() on non-atomic_long_t variables, not
    atomic_long_xchg()

 arch/riscv/include/asm/pgtable.h | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)


base-commit: dcb6fa37fd7bc9c3d2b066329b0d27dedf8becaa
-- 
2.48.1




More information about the linux-riscv mailing list