From: Moger, Babu Date: Tue, 10 Jul 2012 19:12:13 +0000 (+0000) Subject: multipath: retry the DID_SOFT_ERROR for rdac checker commands X-Git-Tag: upstream/0.5.0~9 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8f6b7cdf74af7fcdecb9eac53d573474a7fea268;p=platform%2Fupstream%2Fmultipath-tools.git multipath: retry the DID_SOFT_ERROR for rdac checker commands Sometimes we have seen immediate path failures for DID_SOFT_ERROR status. Just add a retry as other statuses. It will basically add 5 retries. Here are the messages. Jun 4 17:46:42 ictc-billy kernel: mpt2sas0: log_info(0x31120100): originator(PL), code(0x12), sub_code(0x0100) Jun 4 17:46:42 ictc-billy kernel: sd 1:0:0:47: [sdn] Unhandled error code Jun 4 17:46:42 ictc-billy kernel: sd 1:0:0:47: [sdn] Result: hostbyte=DID_SOFT_ERROR driverbyte=DRIVER_OK Jun 4 17:46:42 ictc-billy kernel: sd 1:0:0:47: [sdn] CDB: Write(10): 2a 00 00 06 e4 a0 00 00 20 00 Jun 4 17:46:42 ictc-billy kernel: device-mapper: multipath: Failing path 8:208. Jun 4 17:46:42 ictc-billy multipathd: 8:208: mark as failed Jun 4 17:46:42 ictc-billy multipathd: mpathat: remaining active paths: 1 Signed-off-by: Babu Moger --- diff --git a/libmultipath/checkers/rdac.c b/libmultipath/checkers/rdac.c index cf782e3..5f24f55 100644 --- a/libmultipath/checkers/rdac.c +++ b/libmultipath/checkers/rdac.c @@ -166,6 +166,7 @@ retry: switch (io_hdr.host_status) { case DID_BUS_BUSY: case DID_ERROR: + case DID_SOFT_ERROR: case DID_TRANSPORT_DISRUPTED: /* Transport error, retry */ if (--retry_rdac)