Re: [PATCH 3/3] ring_buffer: Use try_cmpxchg instead of cmpxchg

From: Steven Rostedt
Date: Wed Mar 01 2023 - 11:28:17 EST


On Wed, 1 Mar 2023 11:18:50 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> But with gcc 12.2.0 I don't really see the benefit. And I'm worried that
> the side effect of modifying the old variable could cause a bug in the
> future, if it is used after the try_cmpxchg(). At least for the second case.

Actually, I like Joel's recommendation of adding a cmpxchg_succeeded()
function, that does the try_cmpxchg() without needing to save the old
variable. That's my main concern, as it does have that side effect that
could be missed when updating the code.

That would be the best of both worlds ;-)

-- Steve