Message ID | 20170905193731.909535-3-rwareing@fb.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/fs/xfs/xfs_super.c b/fs/xfs/xfs_super.c index 4dbf95c..de6acc4 100644 --- a/fs/xfs/xfs_super.c +++ b/fs/xfs/xfs_super.c @@ -1148,6 +1148,12 @@ xfs_fs_statfs( ((mp->m_qflags & (XFS_PQUOTA_ACCT|XFS_PQUOTA_ENFD))) == (XFS_PQUOTA_ACCT|XFS_PQUOTA_ENFD)) xfs_qm_statvfs(ip, statp); + if ((ip->i_d.di_flags & XFS_DIFLAG_RTINHERIT) && mp->m_rtdev_targp) { + statp->f_blocks = sbp->sb_rblocks; + statp->f_bavail = statp->f_bfree = + sbp->sb_frextents * sbp->sb_rextsize - + mp->m_alloc_set_aside; + } return 0; }
- Reports real-time device free blocks in statfs calls if inheritance bit is set on the inode of directory. This is a bit more intuitive, especially for use-cases which are using a much larger device for the real-time device. Signed-off-by: Richard Wareing <rwareing@fb.com> --- fs/xfs/xfs_super.c | 6 ++++++ 1 file changed, 6 insertions(+)