On Fri, Jun 10, 2011 at 04:25:58PM -0700, Chandra Seetharaman wrote:
> On Sat, 2011-06-11 at 07:41 +1000, Dave Chinner wrote:
> > On Fri, Jun 10, 2011 at 01:39:47PM -0700, Chandra Seetharaman wrote:
> > > Hi all,
> > >
> > > Test case 202 tries to create a single AG filesystem and runs xfs_repair
> > > on it expecting it to fail.
> > >
> > > But, when I run the test with a filesystem that is bigger than 1TB it
> > > fails (not pleasantly) since the max AG size is 1TB.
> > >
> > > I am thinking of the following solution, please let me know if there is
> > > any other elegant fix.
> > >
> > > chandra
> > > ------------------------
> > > diff --git a/202 b/202
> > > index cbdcb57..b871d8b 100755
> > > --- a/202
> > > +++ b/202
> > > @@ -42,10 +42,12 @@ _supported_os Linux
> > > _require_scratch
> > >
> > > echo "== Creating single-AG filesystem =="
> > > -_scratch_mkfs_xfs -d agcount=1 >/dev/null 2>&1
> > > +_scratch_mkfs_xfs -d agcount=1 >/dev/null 2>&1 \
> > > + || _scratch_mkfs_xfs -d agcount=1 -d size=268435455b >/dev/null 2>&1
> > > + || _fail "!!! failed to make filesystem"
> >
> > Why the second mkfs attempt with a fixed block size?
>
> to see if the mkfs failed because the default filesystem size is too
> big.
The reason for the failure will be in the test output. If the tests
fail, you should be looking at the test output to find out why
anyway, right?
> > That will
> > still fail for block size > 4k.
>
> Realized that. It should have been absolute.
>
> > All you need to do is detect the
> > first attempt failed.
>
> But, I didn't want the test to fail, instead want it to proceed if big
> filesystem was the reason for failure.
>
> By now you might have seen my response to Christoph's email. What do you
> think of that ?
I haven't seen it yet.
> > > echo "== Trying to repair it (should fail) =="
> > > -_scratch_xfs_repair
> > > +_scratch_xfs_repair && _fail "!!! xfs_repair of single AG filesystem
> > > succeeded"
> >
> > This is not necessary - the golden image compare at the end of the
> > test will detect this succeeding when it shoul dbe failing.
>
> But it is not very informative about "why" the test failed. This message
> will make it clear to the user.
It's perfectly clear - the output says "should fail" and so if the
test is failed due to golden output mismatches due to repair
succeeding, it's pretty clear why the test failed.
http://users.on.net/~david_chinner/blog/xfstests_and_golden_output.html
--
Dave Chinner
david@xxxxxxxxxxxxx
|