quota: clean up Q_XQUOTASYNC
authorChristoph Hellwig <hch@infradead.org>
Tue, 16 Feb 2010 08:44:51 +0000 (03:44 -0500)
committerJan Kara <jack@suse.cz>
Thu, 4 Mar 2010 23:20:24 +0000 (00:20 +0100)
commit8c4e4acd660a09e571a71583b5bbe1eee700c9ad
tree05d1208e70d96dfa6857dbb84de7f3554a721992
parentc988afb5fa3fc450207c3dfc0ce535f4bfdae4d1
quota: clean up Q_XQUOTASYNC

Currently Q_XQUOTASYNC calls into the quota_sync method, but XFS does something
entirely different in it than the rest of the filesystems.  xfs_quota which
calls Q_XQUOTASYNC expects an asynchronous data writeout to flush delayed
allocations, while the "VFS" quota support wants to flush changes to the quota
file.

So make Q_XQUOTASYNC call into the writeback code directly and make the
quota_sync method optional as XFS doesn't need in the sense expected by the
rest of the quota code.

GFS2 was using limited XFS-style quota and has a quota_sync method fitting
neither the style used by vfs_quota_sync nor xfs_fs_quota_sync.  I left it
in for now as per discussion with Steve it expects to be called from the
sync path this way.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jan Kara <jack@suse.cz>
fs/quota/quota.c
fs/xfs/linux-2.6/xfs_quotaops.c
include/linux/quotaops.h