Christoph Hellwig 5f1b670d0b block, dm: don't copy bios for request clones
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@lst.de>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
2015-05-22 08:58:57 -06:00
..
2015-04-16 13:53:32 -05:00
2015-05-05 13:40:44 -06:00
2015-04-22 09:18:17 -07:00
2015-04-22 09:18:17 -07:00
2015-04-22 09:04:39 -07:00
2015-05-05 13:40:42 -06:00
2015-04-26 13:36:02 -07:00
2015-04-24 08:23:45 -07:00
2015-05-05 08:42:06 -07:00
2015-04-22 09:18:17 -07:00
2015-04-26 13:36:02 -07:00
2015-04-21 09:42:58 -07:00
2015-04-30 16:48:53 -04:00
2015-04-24 08:46:18 -07:00
2015-04-16 14:01:03 -05:00
2015-04-22 09:04:39 -07:00
2015-04-13 17:07:21 -07:00
2015-04-15 10:02:42 +02:00
2015-04-26 13:44:46 -07:00
2015-04-23 16:55:50 +02:00
2015-04-27 10:10:19 -07:00
2015-05-05 08:42:06 -07:00
2015-04-20 15:16:25 -07:00