[hwtable] Update entries for HP arrays
authorHannes Reinecke <hare@suse.de>
Wed, 16 May 2007 10:51:16 +0000 (12:51 +0200)
committerChristophe Varoqui <cvaroqui@zezette.localdomain>
Mon, 21 May 2007 21:49:23 +0000 (23:49 +0200)
I finally figured out the different versions of HP storage
arrays. Thanks to Stephen Reilly of HP for this.

Signed-off-by: Hannes Reinecke <hare@suse.de>
libmultipath/hwtable.c

index 5e04d95..2a5f2d5 100644 (file)
@@ -63,11 +63,11 @@ static struct hwentry default_hw[] = {
                .vendor        = "DEC",
                .product       = "HSG80",
                .getuid        = DEFAULT_GETUID,
-               .getprio       = NULL,
-               .features      = DEFAULT_FEATURES,
+               .getprio       = "/sbin/mpath_prio_hp_sw /dev/%n",
+               .features      = "1 queue_if_no_path",
                .hwhandler     = "1 hp_sw",
                .selector      = DEFAULT_SELECTOR,
-               .pgpolicy      = GROUP_BY_SERIAL,
+               .pgpolicy      = GROUP_BY_PRIO,
                .pgfailback    = FAILBACK_UNDEF,
                .rr_weight     = RR_WEIGHT_NONE,
                .no_path_retry = NO_PATH_RETRY_UNDEF,
@@ -75,61 +75,62 @@ static struct hwentry default_hw[] = {
                .checker_name  = HP_SW,
        },
        {
-               .vendor        = "(COMPAQ|HP)",
-               .product       = "(MSA|HSV)1.*",
+               .vendor        = "HP",
+               .product       = "A6189A",
                .getuid        = DEFAULT_GETUID,
                .getprio       = NULL,
                .features      = DEFAULT_FEATURES,
-               .hwhandler     = "1 hp_sw",
+               .hwhandler     = DEFAULT_HWHANDLER,
                .selector      = DEFAULT_SELECTOR,
                .pgpolicy      = MULTIBUS,
                .pgfailback    = FAILBACK_UNDEF,
                .rr_weight     = RR_WEIGHT_NONE,
                .no_path_retry = NO_PATH_RETRY_UNDEF,
                .minio         = DEFAULT_MINIO,
-               .checker_name  = HP_SW,
+               .checker_name  = READSECTOR0,
        },
        {
-               .vendor        = "HP",
-               .product       = "A6189A",
+               /* MSA 1000/MSA1500 EVA 3000/5000 with old firmware */
+               .vendor        = "(COMPAQ|HP)",
+               .product       = "(MSA|HSV)1.0.*",
                .getuid        = DEFAULT_GETUID,
-               .getprio       = NULL,
-               .features      = DEFAULT_FEATURES,
-               .hwhandler     = DEFAULT_HWHANDLER,
+               .getprio       = "/sbin/mpath_prio_hp_sw /dev/%n",
+               .features      = "1 queue_if_no_path",
+               .hwhandler     = "1 hp_sw",
                .selector      = DEFAULT_SELECTOR,
-               .pgpolicy      = MULTIBUS,
+               .pgpolicy      = GROUP_BY_PRIO,
                .pgfailback    = FAILBACK_UNDEF,
                .rr_weight     = RR_WEIGHT_NONE,
                .no_path_retry = NO_PATH_RETRY_UNDEF,
                .minio         = DEFAULT_MINIO,
-               .checker_name  = READSECTOR0,
+               .checker_name  = HP_SW,
        },
        {
+               /* MSA 1000/1500 with new firmware */
                .vendor        = "HP",
-               .product       = "HSV20.*",
-               .revision      = "[123].*",
+               .product       = "MSA VOLUME",
                .getuid        = DEFAULT_GETUID,
-               .getprio       = NULL,
+               .getprio       = "/sbin/mpath_prio_alua /dev/%n",
                .features      = DEFAULT_FEATURES,
                .hwhandler     = DEFAULT_HWHANDLER,
                .selector      = DEFAULT_SELECTOR,
-               .pgpolicy      = MULTIBUS,
-               .pgfailback    = FAILBACK_UNDEF,
+               .pgpolicy      = GROUP_BY_PRIO,
+               .pgfailback    = -FAILBACK_IMMEDIATE,
                .rr_weight     = RR_WEIGHT_NONE,
                .no_path_retry = NO_PATH_RETRY_UNDEF,
                .minio         = DEFAULT_MINIO,
-               .checker_name  = HP_SW,
+               .checker_name  = TUR,
        },
        {
-               .vendor        = "HP",
-               .product       = "HSV20.*",
-               .revision      = "[^123].*",
+               /* EVA 3000/5000 with new firmware */
+               .vendor        = "(COMPAQ|HP)",
+               .product       = "(MSA|HSV)1.1.*",
                .getuid        = DEFAULT_GETUID,
                .getprio       = "/sbin/mpath_prio_alua /dev/%n",
                .features      = DEFAULT_FEATURES,
                .hwhandler     = DEFAULT_HWHANDLER,
                .selector      = DEFAULT_SELECTOR,
-               .pgpolicy      = MULTIBUS,
+               .pgpolicy      = GROUP_BY_PRIO,
                .pgfailback    = -FAILBACK_IMMEDIATE,
                .rr_weight     = RR_WEIGHT_NONE,
                .no_path_retry = NO_PATH_RETRY_UNDEF,
@@ -137,15 +138,16 @@ static struct hwentry default_hw[] = {
                .checker_name  = TUR,
        },
        {
+               /* EVA 4000/6000/8000 */
                .vendor        = "HP",
-               .product       = "HSV21.*",
+               .product       = "HSV2.*",
                .getuid        = DEFAULT_GETUID,
                .getprio       = "/sbin/mpath_prio_alua /dev/%n",
                .features      = DEFAULT_FEATURES,
                .hwhandler     = DEFAULT_HWHANDLER,
                .selector      = DEFAULT_SELECTOR,
                .pgpolicy      = GROUP_BY_PRIO,
-               .pgfailback    = FAILBACK_UNDEF,
+               .pgfailback    = -FAILBACK_IMMEDIATE,
                .rr_weight     = RR_WEIGHT_NONE,
                .no_path_retry = NO_PATH_RETRY_UNDEF,
                .minio         = DEFAULT_MINIO,