Re: PROBLEM: kernel crashes on RAID1 drive error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I came up with a patch that seems to fix the kernel crashing on a RAID1 device failure problem. I do not have confidence that it really is the correct fix, but I'm pretty sure that it is touching the right area. I'm sure someone more familiar with this area of the kernel will recognize from this what the correct fix is, if this is not it. Submitted for your consideration:

--- a/drivers/block/ll_rw_blk.c 2004-11-01 14:28:48.000000000 -0600
+++ b/drivers/block/ll_rw_blk.c 2004-11-01 14:29:13.000000000 -0600
@@ -2865,10 +2865,7 @@
      * if the request wasn't completed, update state
      */
     if (bio_nbytes) {
         bio_endio(bio, bio_nbytes, error);
-       bio->bi_idx += next_idx;
-       bio_iovec(bio)->bv_offset += nr_bytes;
-       bio_iovec(bio)->bv_len -= nr_bytes;
     }

     blk_recalc_rq_sectors(req, total_bytes >> 9);

With this applied, my kernel does not crash on media errors on one of the devices and just keeps on running on the other device. In my case, the code just above these lines was taking the path that was walking through the bio_iovec array.

--
Mark Rustad, MRustad@xxxxxxx

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

[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux