[PATCH v2 0/4] arm64: asm improvements

Mark Rutland mark.rutland at arm.com
Tue Mar 14 08:36:56 PDT 2023


This series contains a few minor asm cleanups/improvements I've
collected since the last cycle, one of which was previously posted on
its own [1], hence sending as a v2.

Largely, this is simplifying/relaxing constraints to allow for better
code generation. The cmpxchg patch also drops some C code that's made
redundant with the relaxed constraints.

Since v1:
* Accumulate uaccess asm patches
* lse/cmpxchg: allow use of [WX]ZR for 'new'
* lse/cmpxchg: cleanup commit message

[1] https://lore.kernel.org/linux-arm-kernel/20230206115852.265006-1-mark.rutland@arm.com/

I've given these basic boot testing atop v6.3-rc2 under QEMU TCG mode.

Thanks,
Mark.

Mark Rutland (4):
  arm64: atomics: lse: improve cmpxchg implementation
  arm64: uaccess: permit __smp_store_release() to use zero register
  arm64: uaccess: permit put_{user,kernel} to use zero register
  arm64: uaccess: remove unnecessary earlyclobber

 arch/arm64/include/asm/atomic_lse.h | 17 +++++------------
 arch/arm64/include/asm/barrier.h    | 10 +++++-----
 arch/arm64/include/asm/uaccess.h    |  4 ++--
 3 files changed, 12 insertions(+), 19 deletions(-)

-- 
2.30.2




More information about the linux-arm-kernel mailing list