On Thu 20-05-10 11:05:55, Christoph Hellwig wrote:
> On Thu, May 20, 2010 at 02:49:02PM +0200, Jan Kara wrote:
> > On Wed 19-05-10 14:42:25, Christoph Hellwig wrote:
> > > On Wed, May 19, 2010 at 03:38:04PM +0200, Jan Kara wrote:
> > > > For all 2.6 kernels presence of quota support in kernel can be detected
> > > > by
> > > > checking /proc/sys/fs/quota. This is actually more reliable than trying
> > > > to
> > > > mount a filesystem with quota options (for example because SCRATCH_DEV
> > > > does
> > > > not have to contain a filesystem type we are going to test).
> > >
> > > It's not actually correct. /proc/sys/fs/quota only gets registered by
> > > fs/quota/dquot.c, which means it's not avaiable in a kernel that only
> > > has XFS quotas.
> > Ah, I was convinced that _require_quota() should check whether VFS
> > quotas are enabled but apparently it should work also for XFS. So would
> > test like below be OK?
> > if [ $FSTYP = "xfs" ]; then
> > [ -f /proc/fs/xfs/xqmstat ] || _notrun "Installed kernel does not
> > support XFS quota"
> > else
> > [ -d /proc/sys/fs/quota ] || _notrun "Installed kernel does not support
> > quota"
> > fi
> That would still fail for GFS2.
OK, still easy to fix ;)
if [ $FSTYP = "xfs" ]; then
[ -f /proc/fs/xfs/xqmstat ] || _notrun "Installed kernel does not support
elif [ $FSTYP != "gfs2" ]; then
[ -d /proc/sys/fs/quota ] || _notrun "Installed kernel does not support
Anything else? This filesystem type testing isn't too nice but the only
other way of fixing the old check is by running _scratch_mkfs before it and
that takes long...
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR