]> Git Repo - J-linux.git/commitdiff
Merge patch series "riscv: enable lockless lockref implementation"
authorPalmer Dabbelt <[email protected]>
Wed, 24 Apr 2024 19:57:51 +0000 (12:57 -0700)
committerPalmer Dabbelt <[email protected]>
Tue, 30 Apr 2024 17:35:46 +0000 (10:35 -0700)
Jisheng Zhang <[email protected]> says:

This series selects ARCH_USE_CMPXCHG_LOCKREF to enable the
cmpxchg-based lockless lockref implementation for riscv. Then,
implement arch_cmpxchg64_{relaxed|acquire|release}.

After patch1:
Using Linus' test case[1] on TH1520 platform, I see a 11.2% improvement.
On JH7110 platform, I see 12.0% improvement.

After patch2:
on both TH1520 and JH7110 platforms, I didn't see obvious
performance improvement with Linus' test case [1]. IMHO, this may
be related with the fence and lr.d/sc.d hw implementations. In theory,
lr/sc without fence could give performance improvement over lr/sc plus
fence, so add the code here to leave performance improvement room on
newer HW platforms.

* b4-shazam-merge:
  riscv: cmpxchg: implement arch_cmpxchg64_{relaxed|acquire|release}
  riscv: select ARCH_USE_CMPXCHG_LOCKREF

Link: http://marc.info/?l=linux-fsdevel&m=137782380714721&w=4
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Palmer Dabbelt <[email protected]>
1  2 
arch/riscv/Kconfig
arch/riscv/include/asm/cmpxchg.h

Simple merge
Simple merge
This page took 0.060182 seconds and 4 git commands to generate.