[Top] [All Lists]

Re: How to simulate journal corruption

To: crow al <al-john@xxxxxxxxxxx>
Subject: Re: How to simulate journal corruption
From: Eric Sandeen <sandeen@xxxxxxxxxxx>
Date: Mon, 13 Jul 2009 09:44:03 -0500
Cc: xfs@xxxxxxxxxxx
In-reply-to: <SNT109-W2390816D3EF297CE0D07DEEC220@xxxxxxx>
References: <SNT109-W2390816D3EF297CE0D07DEEC220@xxxxxxx>
User-agent: Thunderbird (Macintosh/20090605)
crow al wrote:
> Hi, there
> I'm a QA engineer from Cisco. I'm working on a test case concerning XFS
> journal playback failure, which needs to manually inject error to XFS.
> I did some google work but get no luck. Then I think maybe XFA-QA could
> give me some advice. That why I come to here.
> Is there anyone could tell me how to inject error into XFS or is there
> any tool could be used?
> Wish for your response.
> Thanks & Regards.
> Lv Wentao.

test 044 in xfstests runs something called "loggen" which will generate
log traffic to be replayed on mount, if I'm reading it right.  Of course
that's an uncorrupted log ...

There is another tool called "fsfuzzer" which writes random junk over a
filesystem.  You could probably combine the two tools to create valid
logs to replay, and then write varying degrees of junk on top with
fsfuzzer, and try to replay the result.

You could probably even use fsfuzzer "stock" and just restrict the
fuzzing to the log portion of the filesystem.

I'm not sure what kinds of errors you are trying to catch - oopses,
hangs, improperly replaying a corrupted log, etc - but it sounds well
worth doing.  FWIW when I used fsfuzzer, it often ran into problems in
the log, so I imagine you'll uncover some interesting things; if you do,
please share.  :)


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