Re: [BUG] raid1: barrier retry does not work correctly with write-behind

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

 



Paul Clements wrote:

I think bio_clone gives us that already. I may have missed something but I think we have everything we need:

When a bio comes into raid1's make_request we bio_clone for each drive and attach those to r1_bio->bios. We also have behind_pages, which contains the pages. I think maybe instead of cloning r1_bio->master_bio, we can just clone r1_bio->bios[i]. Does that make sense?

Never mind, of course that won't work...it's basically the same as using the failed bio.

Yes, so we need a copy of the bvec too. Would it be easier, or less risky just to create an entire "spare" bio, cloned from the master bio during make_request as the other r1_bio->bios[] are, and then use that if we need it? Maybe too much overhead, but it should guarantee that none of the fields have been monkey-ed with by an underlying disk. May be easier than trying to allocate and construct bvecs by hand?

--
Paul
-
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