libmultipath: how to handle sg_read return PATH_DOWN with some lpfc drivers?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

         Recently I met a problem with descrptions below:

         When /etc/multipath.conf was configured “path_checker” with readsector0 and passed in BUFFER_SIZE 4096 to

         sg_read() as below:

         int libcheck_check (struct checker * c)

{

         unsigned char buf[4096];

         unsigned char sbuf[SENSE_BUFF_LEN];

         int ret;

 

         ret = sg_read(c->fd, &buf[0], 4096, &sbuf[0],

                         SENSE_BUFF_LEN, c->timeout);

         ……

}

         In sg_read(), the io_hdr.dxfer_len = bs*blocks will be 4096, As a result the SG_IO may return DID_ERROR and libcheck_check

         return PATH_DOWN with some Storage devices. The lpfc_scsi logs present as below:

 

lpfc 0000:82:00.0: 0:0336 Rsp Ring 0 error: IOCB Data: xff000018 x60 x0 x0 xe00 x0 xa8f0b2e xa29b12

lpfc 0000:82:00.0: 0:(0):9030 FCP cmd x28 failed <0/1> status: x1 result: x0 sid: x12700 did: x11a00 oxid: xffff Data: xa8f xb2e

lpfc 0000:82:00.0: 0:(0):9024 FCP command x28 failed: x0 SNS x0 x0 Data: x8 xe38 x0 x0 x0

lpfc 0000:82:00.0: 0:(0):9025 FCP Read Underrun, expected 4096, residual 3640 Data: xe00 x28 x0

lpfc 0000:82:00.0: 0:(0):9026 FCP Read Check Error and Underrun Data: x1000 xe38 xe00 x28

lpfc 0000:82:00.0: 0:(0):0710 Iodone <0/1> cmd ffff880a6927c080, error x70000 SNS x0 x0 Data: x0 x1000

lpfc 0000:82:00.0: 0:0336 Rsp Ring 0 error: IOCB Data: xff000018 x60 x0 x0 xe00 x0 xa930e92 xa29b12

lpfc 0000:82:00.0: 0:(0):9030 FCP cmd x28 failed <0/10> status: x1 result: x0 sid: x12700 did: x11a00 oxid: xffff Data: xa93 xe92

lpfc 0000:82:00.0: 0:(0):9024 FCP command x28 failed: x0 SNS x0 x0 Data: x8 xe38 x0 x0 x0

lpfc 0000:82:00.0: 0:(0):9025 FCP Read Underrun, expected 4096, residual 3640 Data: xe00 x28 x0

lpfc 0000:82:00.0: 0:(0):9026 FCP Read Check Error and Underrun Data: x1000 xe38 xe00 x28

multipathd[23272]: check_path[1334]: 363334351003637380b7492e600000077: sdcw - readsector0 checker reports path is down

 

         In fact, the devices can be read and write normally but multipathd fail_path it. Is there any advice to handle this problem? Thanks

 

!

--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel

[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux