Re: [GIT PULL REQUEST] late md/raid1 bug fixes for 3.17

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

 



On Fri, 26 Sep 2014 14:08:08 -0500 BillStuff <billstuff2001@xxxxxxxxxxxxx>
wrote:

> On 09/23/2014 09:18 PM, NeilBrown wrote:
> [snip]
> >        md/raid1: intialise start_next_window for READ case to avoid hang
> >
> 
> Neil, I've been testing these patches for the past week or two to see if 
> they help a raid1 "check" hang I had.
> 
> They seem to help, but I noticed the above patch is different from what 
> you originally sent on the list.
> 
> The original patch has an extra chunk:
> 
> @@ -1444,6 +1445,7 @@ read_again:
> 		r1_bio->state = 0;
> 		r1_bio->mddev = mddev;
> 		r1_bio->sector = bio->bi_iter.bi_sector + sectors_handled;
> +		start_next_window = wait_barrier(conf, bio);
> 		goto retry_write;
> 	}
> 
> Is the correct patch with or without this chunk?
> 
> Thanks,
> Bill

That hunk was wrong.
This new r1_bio is attached to the previous one and they all complete (and
particularly all "allow_barrier") as a unit.  So only one wait_barrier is
needed.

That chunk only has any affect if you have a bad-blocks list with bad blocks
in it, and try to write a range of the device which includes the bad block.

Thanks,
NeilBrown

Attachment: signature.asc
Description: PGP signature


[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