On Mon, Sep 23, 2024 at 02:22:17PM +0200, Uros Bizjak wrote: > Use !try_cmpxchg instead of cmpxchg (*ptr, old, new) != old in > xlog_cil_insert_pcp_aggregate(). x86 CMPXCHG instruction returns > success in ZF flag, so this change saves a compare after cmpxchg. > > Also, try_cmpxchg implicitly assigns old *ptr value to "old" when > cmpxchg fails. There is no need to re-read the value in the loop. > > Note that the value from *ptr should be read using READ_ONCE to > prevent the compiler from merging, refetching or reordering the read. > > No functional change intended. > > Signed-off-by: Uros Bizjak <ubizjak@xxxxxxxxx> > Reviewed-by: Christoph Hellwig <hch@xxxxxxxxxxxxx> > Cc: Chandan Babu R <chandan.babu@xxxxxxxxxx> > Cc: "Darrick J. Wong" <djwong@xxxxxxxxxx> Looks fine. Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> -- Dave Chinner david@xxxxxxxxxxxxx