--- raid0.c.orig 2006-10-30 00:12:22.000000000 +0100 +++ raid0.c 2006-10-30 00:14:48.000000000 +0100 @@ -415,6 +415,10 @@ chunksize_bits = ffz(~chunk_size); block = bio->bi_sector >> 1; + if (block >= mddev->array_size) { + bio_endio(bio, bio->bi_size, -EIO); + return 0; + } if (unlikely(chunk_sects < (bio->bi_sector & (chunk_sects - 1)) + (bio->bi_size >> 9))) { struct bio_pair *bp;