On Tue 16-02-10 14:12:07, Christoph Hellwig wrote:
> On Tue, Feb 16, 2010 at 07:36:28PM +0100, Jan Kara wrote:
> > Thanks for the cleanups. Upto a few fixed typos and whitespace errors
> > I've merged your patchset into my tree.
> > As a side note, OCFS2 implements XFS-style clustered quotas using current
> > VFS quota subsystem (and quota file format) so my naive feeling is that at
> > least GFS2 should fit in there as well. But maybe I'm wrong.
> The file format is one big difference. The other is that having the
> quota code in the filesystem allows much nicer integration with the
> transaction code. Anyway, my next step is to support both the
> current "VFS" and the "XFS" quota interface independent of the
> underlying implementation, at least for the runtime calls. The
> quota on/off bits are a bit too different, but it might be a good
> idea to handle those everywhere primarily via mount options and
> deprecate most of the old calls, but keep supporting them for a long
> time. After that I plan to look a bit more in the quota implementation
> and look for sharing opportunities, but it might take a while until I
> get to that.
The semantics I've chosen for OCFS2 is that if "USRQUOTA" filesystem
feature is enabled, we always do accounting of users' usage (as this is
essntially filesystem metadata). 'usrquota' mount option is just ignored
and used only to make life easier to quota-tools (so that they don't have
to parse superblock to find whether quota is supported or not). Enforcement
is enabled / disabled by quotactl call.
I'd eventually love to convert ext3/4 to this behavior as well (and move
quota files to be invisible "system" inodes) so if XFS would be consistent
with this, it would be nice.
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR