xfs
[Top] [All Lists]

Re: [PATCH 05/10] xfstests: do not unmount tmpfs during remount.

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Subject: Re: [PATCH 05/10] xfstests: do not unmount tmpfs during remount.
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Fri, 13 Dec 2013 09:56:57 +1100
Cc: Junho Ryu <jayr@xxxxxxxxxx>, hughd@xxxxxxxxxx, tytso@xxxxxxx, branto@xxxxxxxxxx, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20131212180130.GA19422@xxxxxxxxxxxxx>
References: <1386706321-15795-1-git-send-email-jayr@xxxxxxxxxx> <1386706321-15795-6-git-send-email-jayr@xxxxxxxxxx> <20131211074615.GE19248@xxxxxxxxxxxxx> <20131211224012.GJ10988@dastard> <20131212180130.GA19422@xxxxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Thu, Dec 12, 2013 at 10:01:30AM -0800, Christoph Hellwig wrote:
> On Thu, Dec 12, 2013 at 09:40:12AM +1100, Dave Chinner wrote:
> > IOWs, adding tmpfs changes the definition of a "generic" test.
> > 
> > i.e. instead of:
> > 
> > _supported_fs generic
> > 
> > these tests are now:
> > 
> > _supported_fs xfs ext2 ext3 ext4 ext4dev btrfs gfs2 nfs udf reiserfs
> > 
> > and by that definition should be in the tests/shared directory....
> > 
> > That's a bit of a pain, but I really don't like the idea of having
> > "generic" tests that aren't actually generic by having to define
> > exceptions for them...
> 
> We already have tons of these:

Yes, but that's not the same situation as tmpfs here.  A generic
filesystem fits a certain model but the given configuration/kernel
does not necessarily support the feature being tested. Those
features are easily testable by a _requires_* line.

This case with tmpfs is different - it doesn't support *being
unmounted* during a test because it is volatile. That's a
fundamental change to the assumptions xfstests makes about
filesystems being tested.  IOWs, we've got a "generic" filesystem
that is anything but generic.

Adding "_requires_non_volatile_fs" to all the generic tests that do
an unmount so that tmpfs can be considered "generic" is just as
painful as modifying the "_supported_fs generic" lines in all the
tests. It just leads us to a game of whack-a-mole.

I don't know what the solution here is - everything I think of is
either messy, ugly or unmaintainable. All I'm trying to do is find a
way to handle tmpfs filesystems in a way that is maintainable and
doesn't require every developer to be aware of the quirks of tmpfs
when writing and reviewing new generic tests....

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>