Re: 2.6.0, SiI3112, md raid1 problem: bio too big device (128 > 15)

From: Neil Brown
Date: Wed Dec 24 2003 - 19:28:44 EST


On Wednesday December 24, mfedyk@xxxxxxxxxxxxx wrote:
> On Wed, Dec 24, 2003 at 09:51:00PM +1100, Neil Brown wrote:
> > This is a raid1 bug.
> > Some block devices have limits on the sizes of io requests that they
> > can handle, and advertise these limits with ->max_sectors and
> > ->merge_bvec_fn (and a few others). Any device MUST be able to accept
> > a single page IO at any offset.
>
> So, how can I determine the max io request support by my underlying devices
> from userspace?
>
Not that I am aware of.

> > When raid1 does a 'resync' it does all IO in 64K requests, ignoring
> > the restrictions.
> > Getting raid1 resync to handle the restrictions is non-trivial (I have
> > code, but it is still buggy).
>
> Do you have patches posted anywhere?
>
Not as yet, and as I am on leave, I'm not likely to do much for a
while.

> > A simple interim fix is to replace
> >
> > #define RESYNC_BLOCK_SIZE (64*1024)
> >
> > with
> >
> > #define RESYNC_BLOCK_SIZE PAGE_SIZE
>
> Then by all means, let's get this into -mm.

Andrew Morton has it so it should be in the next -mm or -pre or
whatever he will call things.

NeilBrown
-
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/