All of lore.kernel.org
 help / color / mirror / Atom feed
* the multipath  for EMC CX700
       [not found] <9205a8130740845778fe0e86bffb13f0@g.corp-email.com>
@ 2015-04-13  1:48 ` wuyi
  0 siblings, 0 replies; only message in thread
From: wuyi @ 2015-04-13  1:48 UTC (permalink / raw)
  To: dm-devel


[-- Attachment #1.1: Type: text/plain, Size: 2316 bytes --]

hi:
    I have  some problems about multipath for EMC CX700,the EMC checker indicated "SG_INFO_OK_MASK".but there is no kernel info indicated that the status, driver status or host status was failed.And next checker will up the path immediately.So i think there should be a  "retry" checker to insure the path is really down.


The  message:
Mar 16 19:38:23 node7 sshd[19867]: Accepted password for root from 10.165.14.194 port 59421 ssh2 
Mar 16 19:46:14 node7 : error initializing: No module named up2date_client.up2dateAuth 
Mar 16 19:46:57 node7 multipathd: sdb: emc_clariion_checker: query command indicates error 
Mar 16 19:46:57 node7 multipathd: checker failed path 8:16 in map mpath4 
Mar 16 19:46:57 node7 kernel: [11120.924573] qla2xxx 0000:82:00.0: scsi(4:0:0): Abort command issued -- 1 4a1 2002. 
Mar 16 19:46:57 node7 kernel: [11120.925307] device-mapper: multipath: Failing path 8:16. 
Mar 16 19:46:57 node7 multipathd: mpath4: remaining active paths: 1 
Mar 16 19:46:57 node7 multipathd: mpath4: switch to path group #2 
Mar 16 19:47:02 node7 multipathd: sdb: emc_clariion_checker: Path healthy 
Mar 16 19:47:02 node7 multipathd: 8:16: reinstated 
Mar 16 19:47:02 node7 multipathd: mpath4: remaining active paths: 2 
Mar 16 19:47:02 node7 multipathd: mpath4: switch to path group #1

The diff:
--- libcheckers/emc_clariion.c.old 2015-04-13 09:31:04.000000000 +0800 
+++ libcheckers/emc_clariion.c 2015-04-13 09:34:47.000000000 +0800 
@@ -40,6 +40,8 @@ 

int emc_clariion(struct checker * c) 
{ 
+ int retrytimes = 3; 
+ 
unsigned char sense_buffer[256] = { 0, }; 
unsigned char sb[128] = { 0, }; 
unsigned char inqCmdBlk[INQUIRY_CMDLEN] = {INQUIRY_CMD, 1, 0xC0, 0, 
@@ -59,12 +61,18 @@ 
io_hdr.sbp = sb; 
io_hdr.timeout = DEF_TIMEOUT; 
io_hdr.pack_id = 0; 
+ 
+retry: 
if (ioctl(c->fd, SG_IO, &io_hdr) < 0) { 
MSG(c, "emc_clariion_checker: sending query command failed"); 
return PATH_DOWN; 
} 
if (io_hdr.info & SG_INFO_OK_MASK) { 
MSG(c, "emc_clariion_checker: query command indicates error"); 
+ if(retrytimes){
+ retrytimes--; 
+ goto retry; 
+ } 
return PATH_DOWN; 
} 
if (/* Verify the code page - right page & revision */





I don`t think my modification is good enough,so i hope you can give me some useful ideas to make it better.


[-- Attachment #1.2: Type: text/html, Size: 5282 bytes --]

[-- Attachment #2: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2015-04-13  1:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <9205a8130740845778fe0e86bffb13f0@g.corp-email.com>
2015-04-13  1:48 ` the multipath for EMC CX700 wuyi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.