[Top] [All Lists]

Re: [PATCH v2] xfstests: add support for ext4dev FSTYP

To: Dave Chinner <david@xxxxxxxxxxxxx>
Subject: Re: [PATCH v2] xfstests: add support for ext4dev FSTYP
From: "Amir G." <amir73il@xxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 2 Jun 2011 10:11:43 +0300
Cc: xfs@xxxxxxxxxxx, sandeen@xxxxxxxxxx, linux-ext4@xxxxxxxxxxxxxxx, linux-fsdevel@xxxxxxxxxxxxxxx, sergey57@xxxxxxxxx, Amir Goldstein <amir73il@xxxxxxxxxxxx>
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=dL8QxmGZ6VCG4aUhYiToq7L3nTMbjdXvPBvEUtWBGT4=; b=pOBXHOLTd5Z+G6j4bFBa+PLU9AaDzbYRut7uoQ8rNK9YB+2wjELEnPh+cJVuxcDHzl /xmm/OE5C7P5JW/MIskoYBLa2wNMP5tZuKJsTZ14Pn5GIU/8AkZYJzr2oYtezfZ0btNI 9V/kceNks7/Y7A3UUtSUnaDM7kPdWQ+ZJmIGQ=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=gb3VzPKiiSDgGd4YnyCuTj6zljZDiKAeJ4WiwoTZ4yECpYcYBqcjoaOSuuNDMk3jXM XycXsZDCI4t6lWStKFqn5w0ZKKJTnwu2P74Y5IvwKgWMV2CPwtO0clzsN0FGzcBGgfAE OXemI86dexZQvXDhmJuBbtNf7LenYQ6wjxMio=
In-reply-to: <20110602064040.GS561@dastard>
References: <1306933012-8666-1-git-send-email-amir73il@xxxxxxxxxxxxxxxxxxxxx> <20110601232804.GL32466@dastard> <BANLkTi=sV5=PyZvNSd=DGNW-V84=27d7Yw@xxxxxxxxxxxxxx> <BANLkTimbPWfOJKq6er4mnSYNPcx6VHLcrw@xxxxxxxxxxxxxx> <20110602030802.GR561@dastard> <BANLkTi=sPM_AYB4w=N5pWHfws9R3WnfJVw@xxxxxxxxxxxxxx> <20110602064040.GS561@dastard>
Sender: amir73il@xxxxxxxxx
On Thu, Jun 2, 2011 at 9:40 AM, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
> On Thu, Jun 02, 2011 at 06:49:20AM +0300, Amir G. wrote:
>> On Thu, Jun 2, 2011 at 6:08 AM, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
>> > On Thu, Jun 02, 2011 at 05:33:34AM +0300, Amir G. wrote:
>> >> On Thu, Jun 2, 2011 at 5:16 AM, Amir G. <amir73il@xxxxxxxxxxxxxxxxxxxxx> 
>> >> wrote:
>> >> > On Thu, Jun 2, 2011 at 2:28 AM, Dave Chinner <david@xxxxxxxxxxxxx> 
>> >> > wrote:
>> > Personally I think that ext4dev shouldn't be supported at all. A
>> > special fstyp iwhile ext4 was being developed was, IMO, a stupid
>> > thing to do in the first place, and I was happy when it died. It
>> > should not be resurrected and propagated.
>> >
>> > xfstests assumes that you are using a userspace that is current with
>> > the version of the filesystem the kernel supports. If you are
>> > running a development/special branch of ext4, then you need to be
>> > running a userspace that understands it completely. If all you are
>> > doing with the ext4dev fstyp is trying to vector to a different fsck
>> > program that supports a new set of feature bits, then IMO you are
>> > doing it all wrong.
>> >
>> > Fundamentally, the filesystem is either ext4 or it isn't. If the
>> > features are never going to make it into mainline ext4, then you
>> > need a completely different fstype and full userspace support for
>> > that fstype. Once you have that, you can add the fstype support to
>> > xfstests. However, just using a different fstyp just to set a
>> > certain set of feature flags is, again IMO, a pretty stupid way of
>> > going about this.
>> >
>> The features are going into mainline, but are not there yet.
> So using feature bits as they were intended is the right thing to
> do, isn't it?

I am not sure what you mean by that.
The fact that to this day fsck.ext2/3/4 have always been the same
file (hence support the same feature set) does not mean that they have
to be that way by design.

on my test system fsck.ext4dev must be used to test ext4dev, which has
newer features than ext4.
I fail to see the problem with that.

>> I did not invent the ext4dev standard, which is pretty well supported
>> by all relevant tools, but I find it very convenient for the testing.
> As I understand it, ext4dev is deprecated and should not be used for
> any new filesystems. When did that status change?
> Or did you just start using it because it's convenient for your
> purposes?  What happens when someone else decides to use ext4dev for
> testing incompatible development features because it is convenient
> for them?

The way I see it, ext4dev is a tool for ext4 developers (and testers).
Anyone can use it for their own needs and it would be convenient for everyone.
I never suggested that Fedora push my ext4dev utils as a standard package.
But me and my group can use it to test the snapshots feature and Ted
and his group can use it to test the allocation clusters feature.

>> Especially, when I expect my testers to be running a stable
>> distro release (i.e. F15 or Ubuntu 11.4) and be able to install
>> my experimental ext4dev module and utils, without it affecting
>> their (most likely) root ext4/ext3 fs.
> So get them to use an ext3, XFS, reiser or JFS root filesystem if
> that's your major concern. That's long been a best practice for
> configuring a filesystem test box - don't use the same filesystem
> for your root/stable filesystems as the filesytsem you are testing.
> e.g. If you pick ext3 for the root filesystem, then you can test
> ext4, btrfs, xfs, etc changes without having to worry about whether
> the development module being tested is going to affect your root
> filesystem....

You make it sound as if I have a flock of testers out there waiting for
me to feed them with use cases to test and who abide to my setup

Wake up call! this is not the case for me and for most developers.
If I'm lucky, I can get a e few testers who will say:
OK, if all I have to do is download this package and run 'make test'
I can spare an hour to play with it.

So, yes, it's true. There are other ways to accomplish what I am doing,
but I am going out of my way to try to make the life of developers and testers
easier and you are doing the exact opposite by raising objections to a rather
trivial and harmless patch.

Let me ask you this: which FSTYP will be useful to more developers
ext4dev or reiserfs?

> Cheers,
> Dave.
> --
> Dave Chinner
> david@xxxxxxxxxxxxx

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