Re: [patch 4/5] fail-injection capability for disk IO

From: Jens Axboe
Date: Wed Aug 23 2006 - 13:56:21 EST


On Wed, Aug 23 2006, Andrew Morton wrote:
> On Wed, 23 Aug 2006 14:03:55 +0200
> Jens Axboe <axboe@xxxxxxx> wrote:
>
> > On Wed, Aug 23 2006, Akinobu Mita wrote:
> > > This patch provides fail-injection capability for disk IO.
> > >
> > > Boot option:
> > >
> > > fail_make_request=<probability>,<interval>,<times>,<space>
> > >
> > > <probability>
> > >
> > > specifies how often it should fail in percent.
> > >
> > > <interval>
> > >
> > > specifies the interval of failures.
> > >
> > > <times>
> > >
> > > specifies how many times failures may happen at most.
> > >
> > > <space>
> > >
> > > specifies the size of free space where disk IO can be issued
> > > safely in bytes.
> > >
> > > Example:
> > >
> > > fail_make_request=100,10,-1,0
> > >
> > > generic_make_request() fails once per 10 times.
> >
> > Hmm dunno, seems a pretty useless feature to me.
>
> We need it. What is the FS/VFS/VM behaviour in the presence of IO
> errors? Nobody knows, because we rarely test it. Those few times where
> people _do_ test it (the hard way), bad things tend to happen. reiserfs
> (for example) likes to go wobble, wobble, wobble, BUG.

You misunderstood me - a global parameter is useless, as it makes it
pretty impossible for people to use this for any sort of testing (unless
it's very specialized). I didn't say a feature to test io errors was
useless!

> > Wouldn't it make a lot
> > more sense to do this per-queue instead of a global entity?
>
> Yes, I think so. /sys/block/sda/sda2/make-it-fail.

Precisely.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/