Message ID | 20220403120119.235457-5-hch@lst.de (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [1/5] xfs: add a flags argument to xfs_buf_get | expand |
diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c index ef645e15935369..dd68aee52118c2 100644 --- a/fs/xfs/xfs_buf.c +++ b/fs/xfs/xfs_buf.c @@ -636,12 +636,13 @@ xfs_buf_get_map( } xfs_perag_put(pag); - if (!xfs_buf_trylock(bp)) { - if (flags & XBF_TRYLOCK) { + if (flags & XBF_TRYLOCK) { + if (!xfs_buf_trylock(bp)) { xfs_buf_rele(bp); XFS_STATS_INC(mp, xb_busy_locked); return -EAGAIN; } + } else { xfs_buf_lock(bp); XFS_STATS_INC(mp, xb_get_locked_waited); }