[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4C7143A7.1060901@redhat.com>
Date: Sun, 22 Aug 2010 10:35:03 -0500
From: Eric Sandeen <sandeen@...hat.com>
To: "Ted Ts'o" <tytso@....edu>
CC: linux-ext4@...r.kernel.org
Subject: Re: Updated test case
Ted Ts'o wrote:
> On Sat, Aug 21, 2010 at 07:40:10PM -0500, Eric Sandeen wrote:
>> I'll send an xfstest but it'd be really great if could could work
>> inside the xfstests framework when devising testcases...
>
> If you could put together an xfstests, that would be great. I hadn't
> because Mike's been trying to remind me that I really need to delegate
> to others :-), and we do have someone at Google who can put the
> xfstest script together. You can probably do it faster than he can,
> though.
Hah, I'm also supposed to delegate :D Let's see what your person can
come up with, I'd really like to start seeing more people contribute to
the test suite. I'm happy to answer any questions.
> I didn't use xfs_io because I don't know how to use it, and because
> it's not one of those things which is regularly on our production
> machines that we use for testing. I probably start exploring all of
> the things that can be done with it, though!
Sure, I know it's kind of an oddball tool, but it's really a good swiss
army knife for creating testcases like this. Probably faster than
writing C. :)
>> Ted, is just checking for fs corruption is enough or do you think a
>> test needs the debugfs stat inspection step? It'd be easy enough
>> to special-case a debugfs step for ext4.
>
> Well, if we end up suppressing the EOFBLOCKS_FL test e2fsck (which is
> what we've already done as an emergency workaround) we can't count on
> e2fsck detecting the problem, which is why I phrased this the way I
> did for Aditya's benefit.
Ok. Explicitly exercising blocks-past-EOF on any fallocate-capable
fs is probably a good thing for the test to do, but since ext4 in
particular had a bug, we can always do a debugfs step under
an FSTYP==ext4 case, which is silent on success, and prints out
something on failure (which would change the output and make the
test fail)
-Eric
>>> What I normally do is run it something like this:
>>>
>>> mount /scratch ; pushd /scratch; ~/testcase <opts>; popd ; umount /scratch ; debugfs /dev/sdc1 -R "stat test-file"
>>>
>>> What to look for is whether the flags field is either 0x480000 or
>>> 0x80000. The 0x400000 flag is the EOFBLOCKS_FL flag. If last extent
>>> is uninitialized, then the EOFBLOCKS_FL flag should be set.
>> only if that last extent is past i_size, though...
>
> Good point, and I guess I did have at least one test case where that
> wasn't true.
>
> - Ted
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists