[PATCH] riscv: Use an atomic xchg in pudp_huge_get_and_clear()

Paul Walmsley pjw at kernel.org
Fri Sep 19 18:39:43 PDT 2025


Hi Alex,

On Thu, 14 Aug 2025, Alexandre Ghiti wrote:

> Make sure we return the right pud value and not a value that could
> have been overwritten in between by a different core.
> 
> Fixes: c3cc2a4a3a23 ("riscv: Add support for PUD THP")
> Cc: stable at vger.kernel.org
> Signed-off-by: Alexandre Ghiti <alexghiti at rivosinc.com>
> ---
> Note that this will conflict with
> https://lore.kernel.org/linux-riscv/20250625063753.77511-1-ajd@linux.ibm.com/
> if applied after 6.17.

Two quick questions on this one:

- I see that you're using atomic_long_xchg() here and in some similar 
functions in pgtable.h, rather than xchg().  Was curious about the 
rationale for that?

- x86 avoids the xchg() for !CONFIG_SMP.  Should we do the same?

thanks,

- Paul




More information about the linux-riscv mailing list