[dm-devel] [PATCH 3/4] dm mpath: multipath_clone_and_map must not return -EIO

Christoph Hellwig hch at lst.de
Mon May 15 15:28:38 UTC 2017


Since 412445ac ("dm: introduce a new DM_MAPIO_KILL return value"),  the
clone_and_map_rq methods must not return errno values, so fix it up
to properly return DM_MAPIO_KILL instead, instead of the -EIO value
that sneaked in due to a conflict between two patches.

Signed-off-by: Christoph Hellwig <hch at lst.de>
---
 drivers/md/dm-mpath.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c
index d55454f98b59..3df056b73b66 100644
--- a/drivers/md/dm-mpath.c
+++ b/drivers/md/dm-mpath.c
@@ -481,7 +481,7 @@ static int multipath_clone_and_map(struct dm_target *ti, struct request *rq,
 		if (test_bit(MPATHF_QUEUE_IF_NO_PATH, &m->flags))
 			return DM_MAPIO_DELAY_REQUEUE;
 		dm_report_EIO(m);	/* Failed */
-		return -EIO;
+		return DM_MAPIO_KILL;
 	} else if (test_bit(MPATHF_QUEUE_IO, &m->flags) ||
 		   test_bit(MPATHF_PG_INIT_REQUIRED, &m->flags)) {
 		if (pg_init_all_paths(m))
-- 
2.11.0




More information about the dm-devel mailing list