Re: [PATCH v3] xfs: Use try_cmpxchg() in xlog_cil_insert_pcp_aggregate()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux