[dm-devel] [PATCH v3] block, dm: don't copy bios for request clones
Hannes Reinecke
hare at suse.de
Tue Apr 28 05:49:56 UTC 2015
On 04/28/2015 02:59 AM, Mike Snitzer wrote:
> From: Christoph Hellwig <hch at lst.de>
>
> Currently dm-multipath has to clone the bios for every request sent
> to the lower devices, which wastes cpu cycles and ties down memory.
>
> This patch instead adds a new REQ_CLONE flag that instructs req_bio_endio
> to not complete bios attached to a request, which we set on clone
> requests similar to bios in a flush sequence. With this change I/O
> errors on a path failure only get propagated to dm-multipath, which
> can then either resubmit the I/O or complete the bios on the original
> request.
>
> I've done some basic testing of this on a Linux target with ALUA support,
> and it survives path failures during I/O nicely.
>
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> Signed-off-by: Mike Snitzer <snitzer at redhat.com>
Reviewed-by: Hannes Reinecke <hare at suse.de>
Cheers,
Hannes
--
Dr. Hannes Reinecke zSeries & Storage
hare at suse.de +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)
More information about the dm-devel
mailing list