On Wed, 8 Jan 2025 at 12:13, Kumar Kartikeya Dwivedi <memxor@xxxxxxxxx> wrote: > > Yes, we also noticed during development that try_cmpxchg_tail (in > patch 9) couldn't rely on 16-bit cmpxchg being available everywhere I think that's purely a "we have had no use for it" issue. A 16-bit cmpxchg can always be written using a larger size, and we did that for 8-bit ones for RCU. See commit d4e287d7caff ("rcu-tasks: Remove open-coded one-byte cmpxchg() emulation") which switched RCU over to use a "native" 8-bit cmpxchg, because Paul had added the capability to all architectures, sometimes using a bigger size and "emulating" it: a88d970c8bb5 ("lib: Add one-byte emulation function"). In fact, I think that series added a couple of 16-bit cases too, but I actually went "if we have no users, don't bother". Linus