Hello! This series provides an emulation function for one-byte cmpxchg(), and uses it for the remaining architectures not supporting these in hardware and not providing emulation. The emulation is in terms of the fully ordered four-byte cmpxchg() that is supplied by all of these architectures. The emulation has been used in mainline since v6.9 by csky. Once this emulation is in place for all architectures needing it, RCU Tasks will use this capability in place of the current rcu_trc_cmpxchg_need_qs() open-coding of this emulation. 1. xtensa: Emulate one-byte cmpxchg. 2. ARC: Emulate one-byte cmpxchg. 3. sh: Emulate one-byte cmpxchg. Thanx, Paul ------------------------------------------------------------------------ arc/Kconfig | 1 + arc/include/asm/cmpxchg.h | 33 ++++++++++++++++++++++++--------- sh/Kconfig | 1 + sh/include/asm/cmpxchg.h | 3 +++ xtensa/Kconfig | 1 + xtensa/include/asm/cmpxchg.h | 2 ++ 6 files changed, 32 insertions(+), 9 deletions(-)