]> git.karo-electronics.de Git - linux-beck.git/commit
quota: Add a new quotactl command Q_XGETQSTATV
authorChandra Seetharaman <sekharan@us.ibm.com>
Tue, 6 Aug 2013 22:27:07 +0000 (17:27 -0500)
committerBen Myers <bpm@sgi.com>
Tue, 20 Aug 2013 21:53:58 +0000 (16:53 -0500)
commitaf30cb446dd5f4ad5b93d7d4188c49a864c0d643
tree44e7d582ecffbcb91310a271ba80b218efdce9eb
parentc2bfbc9b485a750b6af4a97ff3ad22b576e74d20
quota: Add a new quotactl command Q_XGETQSTATV

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: Chandra Seetharaman <sekharan@us.ibm.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Rich Johnston <rjohnston@sgi.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
[v2: Applied rjohnston's suggestions as per Chandra's request. -bpm]
fs/quota/quota.c
include/linux/quota.h
include/uapi/linux/dqblk_xfs.h