Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-15721

projid quota limit statfs() on directories only with PROJINHERIT

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.16.0
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      LU-9555 limited the data returned from statfs() (df) to the limits associated with a specific project quota if the directory has lli_projid set to a non-zero value.

      However, for consistency with ext4 and XFS (on which the project quota feature is based) this quota limit should only be imposed if the PROJINHERIT flag is set on the inode:

      static int ext4_statfs(struct dentry *dentry, struct kstatfs *buf)
      {
              :
              :
      #ifdef CONFIG_QUOTA
              if (ext4_test_inode_flag(dentry->d_inode, EXT4_INODE_PROJINHERIT) &&
                  sb_has_quota_limits_enabled(sb, PRJQUOTA))
                      ext4_statfs_project(sb, EXT4_I(dentry->d_inode)->i_projid, buf);
      #endif
      }
      
      int xfs_fs_statfs(struct dentry *dentry, struct kstatfs *statp)
      {
              :
              if ((ip->i_diflags & XFS_DIFLAG_PROJINHERIT) &&
                  ((mp->m_qflags & (XFS_PQUOTA_ACCT|XFS_PQUOTA_ENFD))) ==
                                    (XFS_PQUOTA_ACCT|XFS_PQUOTA_ENFD))
                      xfs_qm_statvfs(ip, statp);
      }
      

      Attachments

        Issue Links

          Activity

            People

              adilger Andreas Dilger
              adilger Andreas Dilger
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: