mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 18:13:41 +02:00
xfs: don't take m_sb_lock in xfs_fs_statfs
The only non-constant value read under m_sb_lock in xfs_fs_statfs is sb_dblocks, and it could become stale right after dropping the lock anyway. Remove the thus pointless lock section. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Signed-off-by: Carlos Maiolino <cem@kernel.org>
This commit is contained in:
parent
f4752daf47
commit
72843ca624
|
|
@ -850,11 +850,13 @@ xfs_fs_statfs(
|
|||
ifree = percpu_counter_sum(&mp->m_ifree);
|
||||
fdblocks = percpu_counter_sum(&mp->m_fdblocks);
|
||||
|
||||
spin_lock(&mp->m_sb_lock);
|
||||
statp->f_bsize = sbp->sb_blocksize;
|
||||
lsize = sbp->sb_logstart ? sbp->sb_logblocks : 0;
|
||||
/*
|
||||
* sb_dblocks can change during growfs, but nothing cares about reporting
|
||||
* the old or new value during growfs.
|
||||
*/
|
||||
statp->f_blocks = sbp->sb_dblocks - lsize;
|
||||
spin_unlock(&mp->m_sb_lock);
|
||||
|
||||
/* make sure statp->f_bfree does not underflow */
|
||||
statp->f_bfree = max_t(int64_t, 0,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user