diff --git a/libmultipath/defaults.h b/libmultipath/defaults.h index 0b39297..87b155e 100644 --- a/libmultipath/defaults.h +++ b/libmultipath/defaults.h @@ -1,4 +1,4 @@ -#define DEFAULT_GETUID "/lib/udev/scsi_id -g -u /dev/%n" +#define DEFAULT_GETUID "/lib/udev/scsi_id -g -u -d /dev/%n" #define DEFAULT_UDEVDIR "/dev" #define DEFAULT_MULTIPATHDIR "/lib/multipath" #define DEFAULT_SELECTOR "round-robin 0" diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c index 48f9b1a..3f45257 100644 --- a/libmultipath/hwtable.c +++ b/libmultipath/hwtable.c @@ -172,7 +172,7 @@ static struct hwentry default_hw[] = { /* HP Smart Array */ .vendor = "HP", .product = "LOGICAL VOLUME.*", - .getuid = "/lib/udev/scsi_id -n -g -u /dev/%n", + .getuid = "/lib/udev/scsi_id -n -g -u -d /dev/%n", .features = DEFAULT_FEATURES, .hwhandler = DEFAULT_HWHANDLER, .selector = DEFAULT_SELECTOR, @@ -214,7 +214,7 @@ static struct hwentry default_hw[] = { { .vendor = "EMC", .product = "SYMMETRIX", - .getuid = "/lib/udev/scsi_id -g -u -ppre-spc3-83 /dev/%n", + .getuid = "/lib/udev/scsi_id -g -u -ppre-spc3-83 -d /dev/%n", .features = DEFAULT_FEATURES, .hwhandler = DEFAULT_HWHANDLER, .selector = DEFAULT_SELECTOR, @@ -337,6 +337,22 @@ static struct hwentry default_hw[] = { .prio_name = PRIO_RDAC, }, { + /* IBM DS3400 */ + .vendor = "IBM", + .product = "1726-4xx", + .getuid = DEFAULT_GETUID, + .features = "1 queue_if_no_path", + .hwhandler = "1 rdac", + .selector = DEFAULT_SELECTOR, + .pgpolicy = GROUP_BY_PRIO, + .pgfailback = -FAILBACK_IMMEDIATE, + .rr_weight = RR_WEIGHT_NONE, + .no_path_retry = 300, + .minio = DEFAULT_MINIO, + .checker_name = RDAC, + .prio_name = PRIO_RDAC, + }, + { /* IBM DS4400 / FAStT700 */ .vendor = "IBM", .product = "1742", @@ -514,6 +530,22 @@ static struct hwentry default_hw[] = { .checker_name = DIRECTIO, .prio_name = DEFAULT_PRIO, }, + { + /* IBM IPR */ + .vendor = "IBM", + .product = "IPR.*", + .getuid = DEFAULT_GETUID, + .features = "1 queue_if_no_path", + .hwhandler = "1 alua", + .selector = DEFAULT_SELECTOR, + .pgpolicy = GROUP_BY_PRIO, + .pgfailback = -FAILBACK_IMMEDIATE, + .rr_weight = RR_WEIGHT_NONE, + .no_path_retry = NO_PATH_RETRY_UNDEF, + .minio = DEFAULT_MINIO, + .checker_name = TUR, + .prio_name = PRIO_ALUA, + }, /* * NETAPP controller family * @@ -679,7 +711,7 @@ static struct hwentry default_hw[] = { { .vendor = "PIVOT3", .product = "RAIGE VOLUME", - .getuid = "/sbin/scsi_id -p 0x80 -g -u -s /block/%n", + .getuid = "/lib/udev/scsi_id -p 0x80 -g -u -d /dev/%n", .features = "1 queue_if_no_path", .hwhandler = DEFAULT_HWHANDLER, .selector = DEFAULT_SELECTOR, diff --git a/libmultipath/uxsock.c b/libmultipath/uxsock.c index f70e2f5..7bfc5d2 100644 --- a/libmultipath/uxsock.c +++ b/libmultipath/uxsock.c @@ -54,7 +54,6 @@ int ux_socket_listen(const char *name) int fd; struct sockaddr_un addr; - /* get rid of any old socket */ unlink(name); diff --git a/multipath.conf.annotated b/multipath.conf.annotated index dda9e4c..a4c7e6a 100644 --- a/multipath.conf.annotated +++ b/multipath.conf.annotated @@ -49,7 +49,7 @@ # # path identifier. Absolute path required # # default : /lib/udev/scsi_id -g -u -s # # -# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n" +# getuid_callout "/lib/udev/scsi_id -g -u -d /dev/%n" # # # # # name : prio @@ -312,7 +312,7 @@ # # path identifier. Absolute path required # # default : /lib/udev/scsi_id -g -u -s # # -# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n" +# getuid_callout "/lib/udev/scsi_id -g -u -d /dev/%n" # # # # # name : prio diff --git a/multipath.conf.synthetic b/multipath.conf.synthetic index 33f820b..6459f56 100644 --- a/multipath.conf.synthetic +++ b/multipath.conf.synthetic @@ -7,7 +7,7 @@ # polling_interval 10 # selector "round-robin 0" # path_grouping_policy multibus -# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n" +# getuid_callout "/lib/udev/scsi_id -g -u -d /dev/%n" # prio const # path_checker directio # rr_min_io 100 @@ -53,7 +53,7 @@ # vendor "COMPAQ " # product "HSV110 (C)COMPAQ" # path_grouping_policy multibus -# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n" +# getuid_callout "/lib/udev/scsi_id -g -u -d /dev/%n" # path_checker directio # path_selector "round-robin 0" # hardware_handler "0" diff --git a/multipath/multipath.conf.5 b/multipath/multipath.conf.5 index fc9d3da..90ef588 100644 --- a/multipath/multipath.conf.5 +++ b/multipath/multipath.conf.5 @@ -109,7 +109,7 @@ Default value is \fImultibus\fR. The default program and args to callout to obtain a unique path identifier. Should be specified with an absolute path. Default value is -.I /lib/udev/scsi_id -g -u -s +.I /lib/udev/scsi_id -g -u -d /dev/%n .TP .B prio_callout The default program and args to callout to obtain a path priority