All of lore.kernel.org
 help / color / mirror / Atom feed
* [multipath] hwtable update
@ 2005-12-13 11:27 Hannes Reinecke
  0 siblings, 0 replies; only message in thread
From: Hannes Reinecke @ 2005-12-13 11:27 UTC (permalink / raw)
  To: christophe varoqui; +Cc: device-mapper development

[-- Attachment #1: Type: text/plain, Size: 858 bytes --]

Hi Christophe,

here's a small update for the hardware table.
I've added a new controller (IBM DS4100), which uses the same controller
than SGI TPC. For a proper support I had to relax the checks in pp_tpc
slightly.
Secondly, it sets the FAILBACK for all machines supported by pp_tpc to
-FAILBACK_IMMEDIATE, as we cannot (yet) adjust the path setting. Hence
we need to switch back to the preferred path as soon as it becomes
available again.

If I ever get my hands on the manual I'll be probably adding a hardware
handler for it. So anyone having a PDF called 'Sofware Interface
Specification' describing amongs others SCSI INQUIRY commands, please
speak up :-)

Cheers,

Hannes
-- 
Dr. Hannes Reinecke			hare@suse.de
SuSE Linux Products GmbH		S390 & zSeries
Maxfeldstraße 5				+49 911 74053 688
90409 Nürnberg				http://www.suse.de

[-- Attachment #2: hwtable-update.patch --]
[-- Type: text/x-patch, Size: 2839 bytes --]

diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -37,6 +37,11 @@ setup_default_hwtable (vector hw)
 	r += store_hwe_ext(hw, "DGC", "^[^LUN_Z]", GROUP_BY_PRIO,
 		   DEFAULT_GETUID, "/sbin/mpath_prio_emc /dev/%n", "1 emc",
 		   "1 queue_if_no_path", "emc_clariion", -FAILBACK_IMMEDIATE);
+	/* IBM DS4100 / FAStT100 */
+	r += store_hwe_ext(hw, "IBM", "1742", GROUP_BY_PRIO, DEFAULT_GETUID,
+		   "/sbin/mpath_prio_tpc /dev/%n", "0", "0", "tur",
+		   -FAILBACK_IMMEDIATE);
+	/* IBM DS4200 / FAStT200 */
 	r += store_hwe_ext(hw, "IBM", "3542", GROUP_BY_SERIAL, DEFAULT_GETUID,
 		   NULL, "0", "0", "tur", FAILBACK_UNDEF);
 	/* IBM ESS F20 aka Shark */
@@ -46,13 +51,14 @@ setup_default_hwtable (vector hw)
        /* IBM DS6000 */
 	r += store_hwe_ext(hw, "IBM", "1750500", GROUP_BY_PRIO, DEFAULT_GETUID,
 		   "/sbin/mpath_prio_alua /dev/%n", "0", "1 queue_if_no_path",
-		   "tur", FAILBACK_UNDEF);
+		   "tur", -FAILBACK_IMMEDIATE);
 	/* IBM DS8000 */
 	r += store_hwe_ext(hw, "IBM", "2107900", GROUP_BY_SERIAL, DEFAULT_GETUID,
 		   NULL, "0", "1 queue_if_no_path", "tur", FAILBACK_UNDEF);
 	/* IBM SAN Volume Controller */
-	r += store_hwe_ext(hw, "IBM", "2145", MULTIBUS, DEFAULT_GETUID,
-		   NULL, "0", "1 queue_if_no_path", "tur", FAILBACK_UNDEF);
+	r += store_hwe_ext(hw, "IBM", "2145", GROUP_BY_PRIO, DEFAULT_GETUID,
+		   "/sbin/mpath_prio_alua /dev/%n", "0", "1 queue_if_no_path",
+		   "tur", -FAILBACK_IMMEDIATE);
 	/* IBM S/390 ECKD DASD */
 	r += store_hwe_ext(hw, "IBM", "S/390 DASD ECKD", MULTIBUS,
 		   "/sbin/dasdview -j /dev/%n", NULL, "0", "0",
@@ -64,9 +70,11 @@ setup_default_hwtable (vector hw)
 		   DEFAULT_GETUID, "/sbin/mpath_prio_alua %d", "0", "0",
 		   "tur", FAILBACK_UNDEF);
 	r += store_hwe_ext(hw, "SGI", "TP9400", GROUP_BY_PRIO, DEFAULT_GETUID,
-		   "/sbin/mpath_prio_tpc /dev/%n", "0", "0", "tur", FAILBACK_UNDEF);
+		   "/sbin/mpath_prio_tpc /dev/%n", "0", "0", "tur",
+		   -FAILBACK_IMMEDIATE);
 	r += store_hwe_ext(hw, "SGI", "TP9500", GROUP_BY_PRIO, DEFAULT_GETUID,
-		   "/sbin/mpath_prio_tpc /dev/%n", "0", "0", "tur", FAILBACK_UNDEF);
+		   "/sbin/mpath_prio_tpc /dev/%n", "0", "0", "tur",
+		   -FAILBACK_IMMEDIATE);
 
 	return r;
 }
diff --git a/path_priority/pp_tpc/pp_tpc.c b/path_priority/pp_tpc/pp_tpc.c
--- a/path_priority/pp_tpc/pp_tpc.c
+++ b/path_priority/pp_tpc/pp_tpc.c
@@ -54,10 +54,10 @@ int sgi_tpc_prio(const char *dev)
 	
 	if (/* Verify the code page - right page & page identifier */
 	    sense_buffer[1] != 0xc9 || 
+	    sense_buffer[3] != 0x2c ||
 	    sense_buffer[4] != 'v' ||
 	    sense_buffer[5] != 'a' ||
-	    sense_buffer[6] != 'c' ||
-	    sense_buffer[7] != '1' ) {
+	    sense_buffer[6] != 'c' ) {
 		fprintf(stderr, "Volume access control page in unknown format");
 		goto out;
 	}

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



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

only message in thread, other threads:[~2005-12-13 11:27 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-12-13 11:27 [multipath] hwtable update Hannes Reinecke

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.