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-22 18:33:48 +03:00
2015-04-22 09:24:55 -07:00
2015-04-22 18:33:43 +03:00
2015-04-24 09:49:37 -07:00
2015-04-24 08:23:45 -07:00
2015-04-26 13:36:02 -07:00
2015-04-15 15:51:50 -04:00
2015-04-24 09:49:37 -07:00
2015-04-13 20:08:38 +02:00
2015-04-24 09:49:37 -07:00
2015-04-22 08:00:41 +10:00
2015-04-15 09:00:47 -07:00
2015-04-23 15:16:37 -04:00
2015-04-15 16:35:22 -07:00
2015-04-24 08:23:45 -07:00
2015-04-22 08:00:42 +10:00
2015-05-22 08:58:55 -06:00
2015-04-17 09:03:56 -04:00
2015-04-17 09:03:53 -04:00
2015-05-22 08:58:57 -06:00
2015-04-17 08:31:12 -06:00
2015-05-22 08:58:57 -06:00
2015-04-14 15:44:14 -04:00
2015-04-15 16:35:22 -07:00
2015-04-14 16:49:03 -07:00
2015-04-24 08:23:45 -07:00
2015-04-14 16:49:04 -07:00
2015-04-15 16:35:17 -07:00
2015-05-04 17:49:51 +08:00
2015-05-04 17:49:51 +08:00
2015-05-04 17:49:51 +08:00
2015-04-16 12:33:51 +09:30
2015-04-15 16:35:22 -07:00
2015-04-15 15:05:28 -04:00
2015-04-14 20:21:54 -07:00
2015-04-21 14:47:16 +05:30
2015-04-17 23:18:53 +05:30
2015-04-14 16:49:05 -07:00
2015-05-20 09:05:42 -06:00
2015-04-14 14:37:47 -07:00
2015-04-14 16:49:04 -07:00
2015-04-13 23:43:34 +02:00
2015-04-14 09:25:26 -07:00
2015-04-15 16:35:19 -07:00
2015-04-14 20:21:54 -07:00
2015-05-05 13:40:42 -06:00
2015-04-21 09:42:58 -07:00
2015-04-18 12:32:59 -07:00
2015-04-15 16:35:22 -07:00
2015-04-15 16:35:20 -07:00
2015-04-21 09:44:55 -03:00
2015-04-17 09:03:55 -04:00
2015-04-23 16:52:01 +02:00
2015-04-15 16:35:17 -07:00
2015-04-14 13:58:48 -07:00
2015-04-13 16:42:16 -07:00
2015-04-14 16:49:06 -07:00
2015-04-14 16:49:00 -07:00
2015-04-15 16:35:18 -07:00
2015-04-14 16:49:05 -07:00
2015-04-17 09:04:07 -04:00
2015-04-22 09:44:36 -07:00
2015-04-15 16:35:16 -07:00
2015-04-14 10:49:03 -07:00
2015-04-18 11:20:31 -04:00
2015-04-29 14:59:16 -04:00
2015-04-24 20:51:40 +02:00
2015-04-13 16:35:16 -04:00
2015-04-21 16:16:04 -04:00
2015-04-26 17:33:59 -07:00
2015-04-23 14:36:28 -04:00
2015-04-14 16:48:59 -07:00
2015-04-14 19:35:44 -05:00
2015-04-14 19:23:24 -05:00
2015-04-24 08:46:18 -07:00
2015-04-14 16:49:05 -07:00
2015-04-15 16:35:19 -07:00
2015-04-16 13:53:32 -05:00
2015-04-15 16:35:23 -07:00
2015-04-15 16:35:23 -07:00
2015-04-24 11:38:12 -04:00
2015-04-15 16:35:19 -07:00
2015-04-29 14:59:16 -04:00
2015-04-27 15:49:30 +02:00
2015-04-15 09:00:47 -07:00
2015-04-25 15:49:49 -04:00
2015-04-14 16:48:59 -07:00
2015-04-20 09:08:49 -07:00
2015-04-14 09:50:27 -07:00
2015-04-16 13:58:42 -04:00
2015-04-16 19:02:04 -04:00
2015-05-19 09:19:59 -06:00
2015-04-17 09:04:07 -04:00
2015-04-28 14:26:20 +02:00
2015-04-15 16:35:22 -07:00
2015-04-15 16:35:22 -07:00
2015-04-28 12:48:57 +02:00
2015-04-17 09:03:54 -04:00
2015-04-14 18:06:47 -07:00
2015-04-15 12:41:14 +09:30
2015-04-15 16:35:20 -07:00