• Chandra Seetharaman's avatar
    quota: Add a new quotactl command Q_XGETQSTATV · af30cb44
    Chandra Seetharaman authored
    XFS now supports three types of quotas (user, group and project).
    Current version of Q_XGETSTAT has support for only two types of quotas.
    In order to support three types of quotas, the interface, specifically
    struct fs_quota_stat, need to be expanded. Current version of fs_quota_stat
    does not allow expansion without breaking backward compatibility.
    So, a quotactl command and new fs_quota_stat structure need to be added.
    This patch adds a new command Q_XGETQSTATV to quotactl() which takes
    a new data structure fs_quota_statv. This new data structure provides
    support for future expansion and backward compatibility.
    Callers of the new quotactl command have to set the version of the data
    structure being passed, and kernel will fill as much data as requested.
    If the kernel does not support the user-space provided version, EINVAL
    will be returned. User-space can reduce the version number and call the same
    quotactl again.
    Signed-off-by: default avatarChandra Seetharaman <sekharan@us.ibm.com>
    Reviewed-by: default avatarJan Kara <jack@suse.cz>
    Reviewed-by: default avatarRich Johnston <rjohnston@sgi.com>
    Signed-off-by: default avatarBen Myers <bpm@sgi.com>
    [v2: Applied rjohnston's suggestions as per Chandra's request. -bpm]
quota.c 10.7 KB