Updated to latest upstream 0.4.9 code: multipath-tools-090429.tgz (git
commit id: 7395bcda3a218df2eab1617df54628af0dc3456e)
This commit is contained in:
parent
b3b10f9bcf
commit
cbdffc7ea0
@ -1 +1 @@
|
|||||||
multipath-tools-080804.tgz
|
multipath-tools-090429.tgz
|
||||||
|
@ -1,936 +0,0 @@
|
|||||||
diff -urpN multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-clean/multipath.conf.annotated multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-patched/multipath.conf.annotated
|
|
||||||
--- multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-clean/multipath.conf.annotated 2008-04-30 06:25:16.000000000 -0500
|
|
||||||
+++ multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-patched/multipath.conf.annotated 2008-05-02 18:22:48.000000000 -0500
|
|
||||||
@@ -19,6 +19,7 @@
|
|
||||||
# # name : polling_interval
|
|
||||||
# # scope : multipathd
|
|
||||||
# # desc : interval between two path checks in seconds
|
|
||||||
+# # values : n > 0
|
|
||||||
# # default : 5
|
|
||||||
# #
|
|
||||||
# polling_interval 10
|
|
||||||
@@ -38,6 +39,13 @@
|
|
||||||
# # scope : multipath
|
|
||||||
# # desc : the default path grouping policy to apply to unspecified
|
|
||||||
# # multipaths
|
|
||||||
+# # values : failover = 1 path per priority group
|
|
||||||
+# # multibus = all valid paths in 1 priority group
|
|
||||||
+# # group_by_serial = 1 priority group per detected serial
|
|
||||||
+# # number
|
|
||||||
+# # group_by_prio = 1 priority group per path priority
|
|
||||||
+# # value
|
|
||||||
+# # group_by_node_name = 1 priority group per target node name
|
|
||||||
# # default : failover
|
|
||||||
# #
|
|
||||||
# path_grouping_policy multibus
|
|
||||||
@@ -59,16 +67,27 @@
|
|
||||||
# # exploitable prio value for example.
|
|
||||||
# # default : (null)
|
|
||||||
# #
|
|
||||||
-# #prio "alua"
|
|
||||||
+# prio "alua"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
-# # name : path_checker
|
|
||||||
+# # name : features
|
|
||||||
+# # scope : multipath
|
|
||||||
+# # desc : The default extra features of multipath devices. The
|
|
||||||
+# # only existing feature currently is queue_if_no_path, which
|
|
||||||
+# # is the same as setting no_path_retry to queue.
|
|
||||||
+# # values : "1 queue_if_no_path"
|
|
||||||
+# # default : (null)
|
|
||||||
+# #
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+#
|
|
||||||
+# #
|
|
||||||
+# # name : path_checker, checker
|
|
||||||
# # scope : multipath & multipathd
|
|
||||||
# # desc : the default method used to determine the paths' state
|
|
||||||
-# # values : readsector0|tur|emc_clariion|hp_sw|directio
|
|
||||||
+# # values : readsector0|tur|emc_clariion|hp_sw|directio|rdac|cciss_tur
|
|
||||||
# # default : directio
|
|
||||||
# #
|
|
||||||
-# #path_checker directio
|
|
||||||
+# path_checker directio
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : rr_min_io
|
|
||||||
@@ -103,8 +122,8 @@
|
|
||||||
# # name : failback
|
|
||||||
# # scope : multipathd
|
|
||||||
# # desc : tell the daemon to manage path group failback, or not to.
|
|
||||||
-# # 0 means immediate failback, values >0 means deffered failback
|
|
||||||
-# # expressed in seconds.
|
|
||||||
+# # 0 means immediate failback, values >0 means deffered
|
|
||||||
+# # failback expressed in seconds.
|
|
||||||
# # values : manual|immediate|n > 0
|
|
||||||
# # default : manual
|
|
||||||
# #
|
|
||||||
@@ -119,7 +138,7 @@
|
|
||||||
# # values : queue|fail|n (>0)
|
|
||||||
# # default : (null)
|
|
||||||
# #
|
|
||||||
-# #no_path_retry queue
|
|
||||||
+# no_path_retry queue
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : user_friendly_names
|
|
||||||
@@ -140,13 +159,16 @@
|
|
||||||
## name : blacklist
|
|
||||||
## scope : multipath & multipathd
|
|
||||||
## desc : list of device names to discard as not multipath candidates
|
|
||||||
-## default : cciss, fd, hd, md, dm, sr, scd, st, ram, raw, loop
|
|
||||||
+## Devices can be identified by their device node name "devnode",
|
|
||||||
+## their WWID "wwid", or their vender and product strings
|
|
||||||
+## "device"
|
|
||||||
+## default : fd, hd, md, dm, sr, scd, st, ram, raw, loop, dcssblk
|
|
||||||
##
|
|
||||||
#blacklist {
|
|
||||||
# wwid 26353900f02796769
|
|
||||||
# devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
|
|
||||||
-# devnode "^hd[a-z][[0-9]*]"
|
|
||||||
-# devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
|
|
||||||
+# devnode "^hd[a-z]"
|
|
||||||
+# devnode "^dcssblk[0-9]*"
|
|
||||||
# device {
|
|
||||||
# vendor DEC.*
|
|
||||||
# product MSA[15]00
|
|
||||||
@@ -199,57 +221,59 @@
|
|
||||||
# # name : path_grouping_policy
|
|
||||||
# # scope : multipath
|
|
||||||
# # desc : path grouping policy to apply to this multipath
|
|
||||||
-# # values : failover, multibus, group_by_serial
|
|
||||||
-# # default : failover
|
|
||||||
+# # multibus = all valid paths in 1 priority
|
|
||||||
+# # group
|
|
||||||
+# # group_by_serial = 1 priority group per detected
|
|
||||||
+# # serial number
|
|
||||||
+# # group_by_prio = 1 priority group per path
|
|
||||||
+# # priority value
|
|
||||||
+# # group_by_node_name = 1 priority group per target
|
|
||||||
+# # node name
|
|
||||||
# #
|
|
||||||
-# path_grouping_policy multibus
|
|
||||||
+# path_grouping_policy failover
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
-# # name : path_checker
|
|
||||||
-# # scope : multipathd
|
|
||||||
-# # desc : path checking alorithm to use to check path state
|
|
||||||
-# # values : readsector0|tur|emc_clariion|hp_sw|directio
|
|
||||||
-# # default : directio
|
|
||||||
-# #
|
|
||||||
-# # path_checker directio
|
|
||||||
-#
|
|
||||||
-# #
|
|
||||||
# # name : path_selector
|
|
||||||
# # desc : the path selector algorithm to use for this mpath
|
|
||||||
# # these algo are offered by the kernel mpath target
|
|
||||||
# # values : "round-robin 0"
|
|
||||||
-# # default : "round-robin 0"
|
|
||||||
# #
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : failback
|
|
||||||
# # scope : multipathd
|
|
||||||
-# # desc : tell the daemon to manage path group failback, or not to.
|
|
||||||
-# # 0 means immediate failback, values >0 means deffered failback
|
|
||||||
-# # expressed in seconds.
|
|
||||||
+# # desc : tell the daemon to manage path group failback, or
|
|
||||||
+# # not to. 0 means immediate failback, values >0 means
|
|
||||||
+# # deffered failback expressed in seconds.
|
|
||||||
# # values : manual|immediate|n > 0
|
|
||||||
-# # default : manual
|
|
||||||
# #
|
|
||||||
-# failback immediate
|
|
||||||
+# failback manual
|
|
||||||
+#
|
|
||||||
+# #
|
|
||||||
+# # name : rr_weight
|
|
||||||
+# # scope : multipath
|
|
||||||
+# # desc : if set to priorities the multipath configurator will
|
|
||||||
+# # assign path weights as "path prio * rr_min_io"
|
|
||||||
+# # values : priorities|uniform
|
|
||||||
+# #
|
|
||||||
+# rr_weight priorities
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : no_path_retry
|
|
||||||
# # scope : multipath & multipathd
|
|
||||||
-# # desc : tell the number of retries until disable queueing, or
|
|
||||||
-# # "fail" means immediate failure (no queueing),
|
|
||||||
+# # desc : tell the number of retries until disable queueing,
|
|
||||||
+# # or "fail" means immediate failure (no queueing),
|
|
||||||
# # "queue" means never stop queueing
|
|
||||||
# # values : queue|fail|n (>0)
|
|
||||||
-# # default : (null)
|
|
||||||
# #
|
|
||||||
-# #no_path_retry queue
|
|
||||||
+# no_path_retry queue
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : rr_min_io
|
|
||||||
# # scope : multipath
|
|
||||||
# # desc : the number of IO to route to a path before switching
|
|
||||||
# # to the next in the same path group
|
|
||||||
-# # default : 1000
|
|
||||||
# #
|
|
||||||
# rr_min_io 100
|
|
||||||
# }
|
|
||||||
@@ -283,83 +307,120 @@
|
|
||||||
# product "HSV110 (C)COMPAQ"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
+# # name : product_blacklist
|
|
||||||
+# # scope : multipath & multipathd
|
|
||||||
+# # desc : product strings to blacklist for this vendor
|
|
||||||
+# # default : none
|
|
||||||
+# #
|
|
||||||
+# product_blacklist LUNZ
|
|
||||||
+#
|
|
||||||
+# #
|
|
||||||
# # name : path_grouping_policy
|
|
||||||
# # scope : multipath
|
|
||||||
# # desc : path grouping policy to apply to multipath hosted
|
|
||||||
# # by this storage controller
|
|
||||||
-# # values : failover = 1 path per priority group
|
|
||||||
-# # multibus = all valid paths in 1 priority
|
|
||||||
-# # group
|
|
||||||
-# # group_by_serial = 1 priority group per detected
|
|
||||||
-# # serial number
|
|
||||||
-# # default : failover
|
|
||||||
+# # values : failover = 1 path per priority group
|
|
||||||
+# # multibus = all valid paths in 1 priority
|
|
||||||
+# # group
|
|
||||||
+# # group_by_serial = 1 priority group per detected
|
|
||||||
+# # serial number
|
|
||||||
+# # group_by_prio = 1 priority group per path
|
|
||||||
+# # priority value
|
|
||||||
+# # group_by_node_name = 1 priority group per target
|
|
||||||
# #
|
|
||||||
-# path_grouping_policy multibus
|
|
||||||
+# path_grouping_policy failover
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : getuid_callout
|
|
||||||
# # scope : multipath
|
|
||||||
# # desc : the program and args to callout to obtain a unique
|
|
||||||
# # path identifier. Absolute path required
|
|
||||||
-# # default : /lib/udev/scsi_id -g -u -s
|
|
||||||
# #
|
|
||||||
# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
-# # name : prio
|
|
||||||
-# # scope : multipath
|
|
||||||
-# # desc : the function to call to obtain a path
|
|
||||||
-# # weight. Weights are summed for each path group to
|
|
||||||
-# # determine the next PG to use case of failure.
|
|
||||||
-# # default : no callout, all paths equals
|
|
||||||
+# # name : path_selector
|
|
||||||
+# # desc : the path selector algorithm to use for this mpath
|
|
||||||
+# # these algo are offered by the kernel mpath target
|
|
||||||
+# # values : "round-robin 0"
|
|
||||||
# #
|
|
||||||
-# prio "hp_sw"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
-# # name : path_checker
|
|
||||||
+# # name : path_checker, checker
|
|
||||||
# # scope : multipathd
|
|
||||||
# # desc : path checking alorithm to use to check path state
|
|
||||||
-# # values : readsector0|tur|emc_clariion|hp_sw|directio
|
|
||||||
-# # default : directio
|
|
||||||
+# # values : readsector0|tur|emc_clariion|hp_sw|directio|rdac|
|
|
||||||
+# # cciss_tur
|
|
||||||
# #
|
|
||||||
# path_checker directio
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
-# # name : path_selector
|
|
||||||
-# # desc : the path selector algorithm to use for this mpath
|
|
||||||
-# # these algo are offered by the kernel mpath target
|
|
||||||
-# # values : "round-robin 0"
|
|
||||||
-# # default : "round-robin 0"
|
|
||||||
+# # name : features
|
|
||||||
+# # scope : multipath
|
|
||||||
+# # desc : The extra features of multipath devices. The only
|
|
||||||
+# # existing feature currently is queue_if_no_path,
|
|
||||||
+# # which is the same as setting no_path_retry to queue.
|
|
||||||
+# # values : "1 queue_if_no_path"
|
|
||||||
# #
|
|
||||||
-# path_selector "round-robin 0"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+#
|
|
||||||
+# #
|
|
||||||
+# # name : hardware_handler
|
|
||||||
+# # scope : multipath
|
|
||||||
+# # desc : If set, it specifies a module that will be used to
|
|
||||||
+# # perform hardware specific actions when switching
|
|
||||||
+# # path groups or handling IO errors
|
|
||||||
+# # values : "0"|"1 emc"
|
|
||||||
+# # default : "0"
|
|
||||||
+# #
|
|
||||||
+# hardware_handler "1 emc"
|
|
||||||
+#
|
|
||||||
+# #
|
|
||||||
+# # name : prio
|
|
||||||
+# # scope : multipath
|
|
||||||
+# # desc : the function to call to obtain a path
|
|
||||||
+# # weight. Weights are summed for each path group to
|
|
||||||
+# # determine the next PG to use case of failure.
|
|
||||||
+# #
|
|
||||||
+# prio "hp_sw"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : failback
|
|
||||||
# # scope : multipathd
|
|
||||||
-# # desc : tell the daemon to manage path group failback, or not to.
|
|
||||||
-# # 0 means immediate failback, values >0 means deffered failback
|
|
||||||
-# # expressed in seconds.
|
|
||||||
+# # desc : tell the daemon to manage path group failback, or
|
|
||||||
+# # not to. 0 means immediate failback, values >0 means
|
|
||||||
+# # deffered failback expressed in seconds.
|
|
||||||
# # values : manual|immediate|n > 0
|
|
||||||
-# # default : manual
|
|
||||||
# #
|
|
||||||
# failback 30
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
-# # name : rr_min_io
|
|
||||||
+# # name : rr_weight
|
|
||||||
# # scope : multipath
|
|
||||||
-# # desc : the number of IO to route to a path before switching
|
|
||||||
-# # to the next in the same path group
|
|
||||||
-# # default : 1000
|
|
||||||
+# # desc : if set to priorities the multipath configurator will
|
|
||||||
+# # assign path weights as "path prio * rr_min_io"
|
|
||||||
+# # values : priorities|uniform
|
|
||||||
# #
|
|
||||||
-# rr_min_io 100
|
|
||||||
+# rr_weight priorities
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
-# # name : product_blacklist
|
|
||||||
+# # name : no_path_retry
|
|
||||||
# # scope : multipath & multipathd
|
|
||||||
-# # desc : product strings to blacklist for this vendor
|
|
||||||
-# # default : none
|
|
||||||
+# # desc : tell the number of retries until disable queueing,
|
|
||||||
+# # or "fail" means immediate failure (no queueing),
|
|
||||||
+# # "queue" means never stop queueing
|
|
||||||
+# # values : queue|fail|n (>0)
|
|
||||||
# #
|
|
||||||
-# product_blacklist LUN_Z
|
|
||||||
+# no_path_retry queue
|
|
||||||
+#
|
|
||||||
+# #
|
|
||||||
+# # name : rr_min_io
|
|
||||||
+# # scope : multipath
|
|
||||||
+# # desc : the number of IO to route to a path before switching
|
|
||||||
+# # to the next in the same path group
|
|
||||||
+# #
|
|
||||||
+# rr_min_io 100
|
|
||||||
# }
|
|
||||||
# device {
|
|
||||||
# vendor "COMPAQ "
|
|
||||||
diff -urpN multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-clean/multipath.conf.defaults multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-patched/multipath.conf.defaults
|
|
||||||
--- multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-clean/multipath.conf.defaults 1969-12-31 18:00:00.000000000 -0600
|
|
||||||
+++ multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-patched/multipath.conf.defaults 2008-05-02 18:54:06.000000000 -0500
|
|
||||||
@@ -0,0 +1,574 @@
|
|
||||||
+# These are the compiled in default settings. They will be used unless you
|
|
||||||
+# overwrite these values in your config file.
|
|
||||||
+
|
|
||||||
+#defaults {
|
|
||||||
+# udev_dir /dev
|
|
||||||
+# polling_interval 5
|
|
||||||
+# selector "round-robin 0"
|
|
||||||
+# path_grouping_policy failover
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# prio const
|
|
||||||
+# path_checker directio
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# failback manual
|
|
||||||
+# no_path_retry fail
|
|
||||||
+# user_friendly_names no
|
|
||||||
+#}
|
|
||||||
+#
|
|
||||||
+#blacklist {
|
|
||||||
+# devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
|
|
||||||
+# devnode "^hd[a-z]"
|
|
||||||
+# devnode "^dcssblk[0-9]*"
|
|
||||||
+#}
|
|
||||||
+#
|
|
||||||
+#devices {
|
|
||||||
+# device {
|
|
||||||
+# vendor "APPLE*"
|
|
||||||
+# product "Xserve RAID"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "3PARdata"
|
|
||||||
+# product "VV"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "DEC"
|
|
||||||
+# product "HSG80"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "1 hp-sw"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker hp_sw
|
|
||||||
+# prio hp_sw
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "HP"
|
|
||||||
+# product "A6189A"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 12
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "(COMPAQ|HP)"
|
|
||||||
+# product "(MSA|HSV)1.0.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "1 hp-sw"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 12
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker hp_sw
|
|
||||||
+# prio hp_sw
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "HP"
|
|
||||||
+# product "MSA VOLUME"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 12
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio alua
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "HP"
|
|
||||||
+# product "MSA2000s*"
|
|
||||||
+# getuid_callout "/sbin/cciss_id %n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 12
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "(COMPAQ|HP)"
|
|
||||||
+# product "HSV1[01]1|HSV2[01]0|HSV300"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 12
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio alua
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "HP"
|
|
||||||
+# product "MSA2[02]12*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 12
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "HP"
|
|
||||||
+# product "LOGICAL VOLUME.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -n -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 12
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "DDN"
|
|
||||||
+# product "SAN DataDirector"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "EMC"
|
|
||||||
+# product "SYMMETRIX"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -ppre-spc3-83 -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "DGC"
|
|
||||||
+# product ".*"
|
|
||||||
+# product_blacklist "LUNZ"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# prio_callout "/sbin/mpath_prio_emc /dev/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "1 emc"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 60
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker emc_clariion
|
|
||||||
+# prio emc
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "FSC"
|
|
||||||
+# product "CentricStor"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_serial
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "(HITACHI|HP)"
|
|
||||||
+# product "OPEN-.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 100
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "HITACHI"
|
|
||||||
+# product "DF.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio hds
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "ProFibre 4000R"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker readsector0
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "1722-600"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry 300
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "1742"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "1814"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "1815"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "3526"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "3542"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_serial
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "2105(800|F20)"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_serial
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "1750500"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio alua
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "2107900"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "2145"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio alua
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "S/390 DASD ECKD"
|
|
||||||
+# product_blacklist "S/390.*"
|
|
||||||
+# getuid_callout "/sbin/dasdinfo -u -b %n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "NETAPP"
|
|
||||||
+# product "LUN.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 128
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio netapp
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "IBM"
|
|
||||||
+# product "Nseries.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 128
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio netapp
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "Pillar"
|
|
||||||
+# product "Axiom.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio alua
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "SGI"
|
|
||||||
+# product "TP9[13]00"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "SGI"
|
|
||||||
+# product "TP9[45]00"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "SGI"
|
|
||||||
+# product "IS.*"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "STK"
|
|
||||||
+# product "OPENstorage D280"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "SUN"
|
|
||||||
+# product "(StorEdge 3510|T4)"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker directio
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "PIVOT3"
|
|
||||||
+# product "RAIGE VOLUME"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -p 0x80 -g -u -s /block/%n"
|
|
||||||
+# features "1 queue_if_no_path"
|
|
||||||
+# hardware_handler "0"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy multibus
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker tur
|
|
||||||
+# prio const
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "SUN"
|
|
||||||
+# product "CSM200_R"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "SUN"
|
|
||||||
+# product "LCSM100_F"
|
|
||||||
+# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback immediate
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# no_path_retry queue
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
+#}
|
|
||||||
diff -urpN multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-clean/multipath.conf.synthetic multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-patched/multipath.conf.synthetic
|
|
||||||
--- multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-clean/multipath.conf.synthetic 2008-04-30 06:25:16.000000000 -0500
|
|
||||||
+++ multipath-tools-cf94ef0ee3f8046aa2b8dc90aee14edf76d4bbf7-patched/multipath.conf.synthetic 2008-05-02 18:56:12.000000000 -0500
|
|
||||||
@@ -21,7 +21,6 @@
|
|
||||||
# wwid 26353900f02796769
|
|
||||||
# devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
|
|
||||||
# devnode "^hd[a-z][[0-9]*]"
|
|
||||||
-# devnode "^cciss!c[0-9]d[0-9]*[p[0-9]*]"
|
|
||||||
# device {
|
|
||||||
# vendor DEC.*
|
|
||||||
# product MSA[15]00
|
|
||||||
@@ -61,7 +60,7 @@
|
|
||||||
# rr_weight priorities
|
|
||||||
# no_path_retry queue
|
|
||||||
# rr_min_io 100
|
|
||||||
-# product_blacklist LUN_Z
|
|
||||||
+# product_blacklist LUNZ
|
|
||||||
# }
|
|
||||||
# device {
|
|
||||||
# vendor "COMPAQ "
|
|
@ -1,27 +0,0 @@
|
|||||||
Index: multipath-tools/libmultipath/parser.c
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/libmultipath/parser.c
|
|
||||||
+++ multipath-tools/libmultipath/parser.c
|
|
||||||
@@ -239,12 +239,20 @@ alloc_strvec(char *string)
|
|
||||||
in_string = 0;
|
|
||||||
else
|
|
||||||
in_string = 1;
|
|
||||||
+ } else if (!in_string && (*cp == '{' || *cp == '}')) {
|
|
||||||
+ token = MALLOC(2);
|
|
||||||
|
|
||||||
+ if (!token)
|
|
||||||
+ goto out;
|
|
||||||
+
|
|
||||||
+ *(token) = *cp;
|
|
||||||
+ *(token + 1) = '\0';
|
|
||||||
+ cp++;
|
|
||||||
} else {
|
|
||||||
while ((in_string ||
|
|
||||||
(!isspace((int) *cp) && isascii((int) *cp) &&
|
|
||||||
- *cp != '!' && *cp != '#')) &&
|
|
||||||
- *cp != '\0' && *cp != '"')
|
|
||||||
+ *cp != '!' && *cp != '#' && *cp != '{' &&
|
|
||||||
+ *cp != '}')) && *cp != '\0' && *cp != '"')
|
|
||||||
cp++;
|
|
||||||
strlen = cp - start;
|
|
||||||
token = MALLOC(strlen + 1);
|
|
@ -1,31 +1,29 @@
|
|||||||
Summary: Tools to manage multipath devices using device-mapper
|
Summary: Tools to manage multipath devices using device-mapper
|
||||||
Name: device-mapper-multipath
|
Name: device-mapper-multipath
|
||||||
Version: 0.4.8
|
Version: 0.4.9
|
||||||
Release: 10%{?dist}
|
Release: 1%{?dist}
|
||||||
License: GPL+
|
License: GPL+
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
URL: http://christophe.varoqui.free.fr/
|
URL: http://christophe.varoqui.free.fr/
|
||||||
Source0: multipath-tools-080804.tgz
|
|
||||||
Patch0: linking_change.patch
|
Source0: multipath-tools-090429.tgz
|
||||||
Patch1: uevent_fix.patch
|
Patch0: lib64_multipath.patch
|
||||||
Patch2: sparc64fix.patch
|
Patch1: redhatification.patch
|
||||||
Patch3: config_files.patch
|
Patch2: mpath_wait.patch
|
||||||
Patch4: redhatification.patch
|
Patch3: multipath_rules.patch
|
||||||
Patch5: mpath_wait.patch
|
Patch4: cciss_id.patch
|
||||||
Patch6: multipath_rules.patch
|
Patch5: directio_message_cleanup.patch
|
||||||
Patch7: cciss_id.patch
|
Patch6: binding_error.patch
|
||||||
Patch8: scsi_id_change.patch
|
Patch7: fix_kpartx.patch
|
||||||
Patch9: config_space_fix.patch
|
|
||||||
Patch10: fix_devt.patch
|
|
||||||
Patch11: directio_message_cleanup.patch
|
|
||||||
Patch12: binding_error.patch
|
|
||||||
Patch13: fix_kpartx.patch
|
|
||||||
Patch14: fix_umask.patch
|
|
||||||
Requires: kpartx = %{version}-%{release}
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
Requires: %{name}-libs = %{version}-%{release}
|
||||||
|
Requires: kpartx = %{version}-%{release}
|
||||||
|
Requires: device-mapper >= 1.02.02-2
|
||||||
Requires(post): chkconfig
|
Requires(post): chkconfig
|
||||||
Requires(preun): chkconfig
|
Requires(preun): chkconfig
|
||||||
Requires: device-mapper >= 1.02.02-2
|
Requires(preun): initscripts
|
||||||
|
Requires(postun): initscripts
|
||||||
BuildRequires: libaio-devel, device-mapper-devel
|
BuildRequires: libaio-devel, device-mapper-devel
|
||||||
BuildRequires: libselinux-devel, libsepol-devel
|
BuildRequires: libselinux-devel, libsepol-devel
|
||||||
BuildRequires: readline-devel, ncurses-devel
|
BuildRequires: readline-devel, ncurses-devel
|
||||||
@ -37,6 +35,15 @@ The tools are :
|
|||||||
* multipath : Scan the system for multipath devices and assemble them.
|
* multipath : Scan the system for multipath devices and assemble them.
|
||||||
* multipathd : Detects when paths fail and execs multipath to update things.
|
* multipathd : Detects when paths fail and execs multipath to update things.
|
||||||
|
|
||||||
|
%package libs
|
||||||
|
Summary: %{name} modules and shared library
|
||||||
|
License: GPL+
|
||||||
|
Group: System Environment/Libraries
|
||||||
|
|
||||||
|
%description libs
|
||||||
|
%{name}-libs provides the path checker and prioritizer modules. It also
|
||||||
|
contains the multipath shared library, libmultipath.
|
||||||
|
|
||||||
%package -n kpartx
|
%package -n kpartx
|
||||||
Summary: Partition device manager for device-mapper devices
|
Summary: Partition device manager for device-mapper devices
|
||||||
Group: System Environment/Base
|
Group: System Environment/Base
|
||||||
@ -47,28 +54,29 @@ kpartx manages partition creation and removal for device-mapper devices.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n multipath-tools
|
%setup -q -n multipath-tools
|
||||||
%patch0 -p1 -b .linking_change
|
%if %{_lib} == "lib64"
|
||||||
%patch1 -p1 -b .uevent_fix
|
%patch0 -p1 -b .lib64_multipath
|
||||||
%patch2 -p1 -b .sparc64fix
|
%endif
|
||||||
%patch3 -p1 -b .config_files
|
%patch1 -p1 -b .redhatification
|
||||||
%patch4 -p1 -b .redhatification
|
%patch2 -p1 -b .mpath_wait
|
||||||
%patch5 -p1 -b .mpath_wait
|
%patch3 -p1 -b .multipath_rules
|
||||||
%patch6 -p1 -b .multipath_rules
|
%patch4 -p1 -b .cciss_id
|
||||||
%patch7 -p1 -b .cciss_id
|
%patch5 -p1 -b .directio_message
|
||||||
%patch8 -p1 -b .scsi_id_change
|
%patch6 -p1 -b .binding_error
|
||||||
%patch9 -p1 -b .config_space_fix
|
%patch7 -p1 -b .fix_kpartx
|
||||||
%patch10 -p1 -b .fix_devt
|
|
||||||
%patch11 -p1 -b .directio_message
|
|
||||||
%patch12 -p1 -b .binding_error
|
|
||||||
%patch13 -p1 -b .ext_part
|
|
||||||
%patch14 -p1 -b .umask
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
make %{?_smp_mflags} DESTDIR=$RPM_BUILD_ROOT
|
%define _sbindir /sbin
|
||||||
|
%define _libdir /%{_lib}
|
||||||
|
%define _libmpathdir %{_libdir}/multipath
|
||||||
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
make install DESTDIR=$RPM_BUILD_ROOT bindir=/sbin rcdir=/etc/rc.d/init.d
|
make install DESTDIR=$RPM_BUILD_ROOT bindir=%{_sbindir} syslibdir=%{_libdir} libdir=%{_libmpathdir} rcdir=%{_initrddir}
|
||||||
|
install -m 0644 multipath/multipath.conf.redhat $RPM_BUILD_ROOT/etc/multipath.conf
|
||||||
|
install -m 0755 multipathd/multipathd.init.redhat $RPM_BUILD_ROOT/%{_initrddir}/multipathd
|
||||||
|
install -d $RPM_BUILD_ROOT/var/lib/multipath
|
||||||
|
|
||||||
%clean
|
%clean
|
||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
@ -91,13 +99,11 @@ fi
|
|||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
/sbin/multipath
|
%{_sbindir}/multipath
|
||||||
/sbin/multipathd
|
%{_sbindir}/multipathd
|
||||||
/sbin/cciss_id
|
%{_sbindir}/cciss_id
|
||||||
/sbin/mpath_wait
|
%{_sbindir}/mpath_wait
|
||||||
/lib/libmultipath.so
|
%{_initrddir}/multipathd
|
||||||
/lib/multipath
|
|
||||||
/etc/rc.d/init.d/multipathd
|
|
||||||
%{_mandir}/man5/multipath.conf.5.gz
|
%{_mandir}/man5/multipath.conf.5.gz
|
||||||
%{_mandir}/man8/multipath.8.gz
|
%{_mandir}/man8/multipath.8.gz
|
||||||
%{_mandir}/man8/multipathd.8.gz
|
%{_mandir}/man8/multipathd.8.gz
|
||||||
@ -106,6 +112,11 @@ fi
|
|||||||
%doc AUTHOR COPYING README* FAQ multipath.conf.annotated multipath.conf.defaults multipath.conf.synthetic
|
%doc AUTHOR COPYING README* FAQ multipath.conf.annotated multipath.conf.defaults multipath.conf.synthetic
|
||||||
%dir /var/lib/multipath
|
%dir /var/lib/multipath
|
||||||
|
|
||||||
|
%files libs
|
||||||
|
%defattr(-,root,root,-)
|
||||||
|
%{_libdir}/libmultipath.so
|
||||||
|
%{_libmpathdir}
|
||||||
|
%dir %{_libmpathdir}
|
||||||
|
|
||||||
%files -n kpartx
|
%files -n kpartx
|
||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
@ -113,6 +124,12 @@ fi
|
|||||||
%{_mandir}/man8/kpartx.8.gz
|
%{_mandir}/man8/kpartx.8.gz
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Apr 29 2009 Mike Snitzer <snitzer@redhat.com> - 0.4.9-1
|
||||||
|
- Updated to latest upstream 0.4.9 code: multipath-tools-090429.tgz
|
||||||
|
(git commit id: 7395bcda3a218df2eab1617df54628af0dc3456e)
|
||||||
|
- split the multipath libs out to a device-mapper-multipath-libs package
|
||||||
|
- if appropriate, install multipath libs in /lib64 and /lib64/multipath
|
||||||
|
|
||||||
* Thu Apr 7 2009 Milan Broz <mbroz@redhat.com> - 0.4.8-10
|
* Thu Apr 7 2009 Milan Broz <mbroz@redhat.com> - 0.4.8-10
|
||||||
- Fix insecure permissions on multipathd.sock (CVE-2009-0115)
|
- Fix insecure permissions on multipathd.sock (CVE-2009-0115)
|
||||||
|
|
||||||
|
@ -1,15 +1,17 @@
|
|||||||
Index: multipath-tools/libmultipath/checkers/directio.c
|
diff --git a/libmultipath/checkers/directio.c b/libmultipath/checkers/directio.c
|
||||||
===================================================================
|
index 4728424..7624c4e 100644
|
||||||
--- multipath-tools.orig/libmultipath/checkers/directio.c
|
--- a/libmultipath/checkers/directio.c
|
||||||
+++ multipath-tools/libmultipath/checkers/directio.c
|
+++ b/libmultipath/checkers/directio.c
|
||||||
@@ -148,8 +148,9 @@ check_state(int fd, struct directio_cont
|
@@ -148,10 +148,11 @@ check_state(int fd, struct directio_context *ct, int sync)
|
||||||
}
|
}
|
||||||
ct->running++;
|
ct->running++;
|
||||||
|
|
||||||
+ errno = 0;
|
+ errno = 0;
|
||||||
r = io_getevents(ct->ioctx, 1L, 1L, &event, &timeout);
|
r = io_getevents(ct->ioctx, 1L, 1L, &event, &timeout);
|
||||||
- LOG(3, "async io getevents returns %li (errno=%s)", r, strerror(errno));
|
|
||||||
+ LOG(3, "async io_getevents returns %li (%s)", r, strerror(errno));
|
|
||||||
|
|
||||||
if (r < 1L) {
|
if (r < 0 ) {
|
||||||
if (ct->running > ASYNC_TIMEOUT_SEC || sync) {
|
- LOG(3, "async io getevents returned %li (errno=%s)", r,
|
||||||
|
+ LOG(3, "async io getevents returned %li (%s)", r,
|
||||||
|
strerror(errno));
|
||||||
|
rc = PATH_UNCHECKED;
|
||||||
|
} else if (r < 1L) {
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
Index: multipath-tools/libmultipath/discovery.c
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/libmultipath/discovery.c
|
|
||||||
+++ multipath-tools/libmultipath/discovery.c
|
|
||||||
@@ -252,7 +252,11 @@ devt2devname (char *devname, char *devt)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if ((major == tmpmaj) && (minor == tmpmin)) {
|
|
||||||
- sprintf(block_path, "/sys/block/%s", dev);
|
|
||||||
+ if (snprintf(block_path, FILE_NAME_SIZE, "/sys/block/%s", dev) >= FILE_NAME_SIZE) {
|
|
||||||
+ condlog(0, "device name %s is too long\n", dev);
|
|
||||||
+ fclose(fd);
|
|
||||||
+ return 1;
|
|
||||||
+ }
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -270,6 +274,7 @@ devt2devname (char *devname, char *devt)
|
|
||||||
condlog(0, "sysfs entry %s is not a directory\n", block_path);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
+ basename(block_path, devname);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
|||||||
--- multipath-tools.old/multipathd/main.c 2009-04-02 12:22:37.000000000 +0200
|
|
||||||
+++ multipath-tools/multipathd/main.c 2009-04-02 12:25:13.000000000 +0200
|
|
||||||
@@ -718,6 +718,7 @@ uxlsnrloop (void * ap)
|
|
||||||
set_handler_callback(REINSTATE+PATH, cli_reinstate);
|
|
||||||
set_handler_callback(FAIL+PATH, cli_fail);
|
|
||||||
|
|
||||||
+ umask(077);
|
|
||||||
uxsock_listen(&uxsock_trigger, ap);
|
|
||||||
|
|
||||||
return NULL;
|
|
||||||
@@ -1436,7 +1437,6 @@ daemonize(void)
|
|
||||||
close(in_fd);
|
|
||||||
close(out_fd);
|
|
||||||
chdir("/");
|
|
||||||
- umask(0);
|
|
||||||
return 0;
|
|
||||||
}
|
|
12
lib64_multipath.patch
Normal file
12
lib64_multipath.patch
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff --git a/libmultipath/defaults.h b/libmultipath/defaults.h
|
||||||
|
index d7f93cb..357c519 100644
|
||||||
|
--- a/libmultipath/defaults.h
|
||||||
|
+++ b/libmultipath/defaults.h
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
#define DEFAULT_GETUID "/lib/udev/scsi_id --whitelisted --device=/dev/%n"
|
||||||
|
#define DEFAULT_UDEVDIR "/dev"
|
||||||
|
-#define DEFAULT_MULTIPATHDIR "/lib/multipath"
|
||||||
|
+#define DEFAULT_MULTIPATHDIR "/lib64/multipath"
|
||||||
|
#define DEFAULT_SELECTOR "round-robin 0"
|
||||||
|
#define DEFAULT_FEATURES "0"
|
||||||
|
#define DEFAULT_HWHANDLER "0"
|
@ -1,68 +0,0 @@
|
|||||||
Index: multipath-tools/libmultipath/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/libmultipath/Makefile
|
|
||||||
+++ multipath-tools/libmultipath/Makefile
|
|
||||||
@@ -23,14 +23,15 @@ endif
|
|
||||||
all: $(LIBS)
|
|
||||||
|
|
||||||
$(LIBS): $(OBJS)
|
|
||||||
- $(CC) $(SHARED_FLAGS) $(CFLAGS) -o $@ $(OBJS)
|
|
||||||
+ $(CC) $(SHARED_FLAGS) -Wl,-soname,$@ $(CFLAGS) -o $@ $(OBJS)
|
|
||||||
|
|
||||||
install:
|
|
||||||
+ $(INSTALL_PROGRAM) -d $(DESTDIR)$(prefix)/lib
|
|
||||||
+ $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(prefix)/lib/$(LIBS)
|
|
||||||
$(INSTALL_PROGRAM) -m 755 -d $(DESTDIR)$(libdir)
|
|
||||||
- $(INSTALL_PROGRAM) -m 755 $(LIBS) $(DESTDIR)$(libdir)/$(LIBS)
|
|
||||||
|
|
||||||
uninstall:
|
|
||||||
- rm -f $(DESTDIR)$(libdir)/$(LIBS)
|
|
||||||
+ rm -f $(DESTDIR)$(prefix)/lib/$(LIBS)
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -f core *.a *.o *.gz *.so
|
|
||||||
Index: multipath-tools/multipath/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath/Makefile
|
|
||||||
+++ multipath-tools/multipath/Makefile
|
|
||||||
@@ -6,9 +6,8 @@ include ../Makefile.inc
|
|
||||||
|
|
||||||
OBJS = main.o
|
|
||||||
|
|
||||||
-CFLAGS += -I$(multipathdir) -Wl,-rpath,$(libdir)
|
|
||||||
-LDFLAGS += -lpthread -ldevmapper -laio -ldl \
|
|
||||||
- -lmultipath -L$(multipathdir)
|
|
||||||
+CFLAGS += -I$(multipathdir)
|
|
||||||
+LDFLAGS += -lpthread -ldevmapper -ldl -lmultipath -L$(multipathdir)
|
|
||||||
|
|
||||||
EXEC = multipath
|
|
||||||
|
|
||||||
Index: multipath-tools/multipathd/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipathd/Makefile
|
|
||||||
+++ multipath-tools/multipathd/Makefile
|
|
||||||
@@ -5,8 +5,8 @@ include ../Makefile.inc
|
|
||||||
#
|
|
||||||
# basic flags setting
|
|
||||||
#
|
|
||||||
-CFLAGS += -I$(multipathdir) -Wl,-rpath,$(libdir)
|
|
||||||
-LDFLAGS += -lpthread -ldevmapper -lreadline -lncurses -laio -ldl \
|
|
||||||
+CFLAGS += -I$(multipathdir)
|
|
||||||
+LDFLAGS += -lpthread -ldevmapper -lreadline -lncurses -ldl \
|
|
||||||
-lmultipath -L$(multipathdir)
|
|
||||||
|
|
||||||
#
|
|
||||||
Index: multipath-tools/libmultipath/checkers/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/libmultipath/checkers/Makefile
|
|
||||||
+++ multipath-tools/libmultipath/checkers/Makefile
|
|
||||||
@@ -17,6 +17,9 @@ CFLAGS += -I..
|
|
||||||
|
|
||||||
all: $(LIBS)
|
|
||||||
|
|
||||||
+libcheckdirectio.so: libsg.o directio.o
|
|
||||||
+ $(CC) $(SHARED_FLAGS) -o $@ $^ -laio
|
|
||||||
+
|
|
||||||
libcheck%.so: libsg.o %.o
|
|
||||||
$(CC) $(SHARED_FLAGS) -o $@ $^
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
Index: multipath-tools-080515/multipath/Makefile
|
diff --git a/multipath/Makefile b/multipath/Makefile
|
||||||
===================================================================
|
index e0031a2..fe377d8 100644
|
||||||
--- multipath-tools-080515.orig/multipath/Makefile
|
--- a/multipath/Makefile
|
||||||
+++ multipath-tools-080515/multipath/Makefile
|
+++ b/multipath/Makefile
|
||||||
@@ -21,7 +21,7 @@ $(EXEC): $(OBJS)
|
@@ -20,7 +20,7 @@ $(EXEC): $(OBJS)
|
||||||
|
|
||||||
install:
|
install:
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
|
$(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
|
||||||
@ -11,7 +11,7 @@ Index: multipath-tools-080515/multipath/Makefile
|
|||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)/etc/udev/rules.d
|
$(INSTALL_PROGRAM) -d $(DESTDIR)/etc/udev/rules.d
|
||||||
$(INSTALL_PROGRAM) -m 644 multipath.rules $(DESTDIR)/etc/udev/rules.d/
|
$(INSTALL_PROGRAM) -m 644 multipath.rules $(DESTDIR)/etc/udev/rules.d/
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(mandir)
|
$(INSTALL_PROGRAM) -d $(DESTDIR)$(mandir)
|
||||||
@@ -36,6 +36,7 @@ install:
|
@@ -31,6 +31,7 @@ install:
|
||||||
uninstall:
|
uninstall:
|
||||||
rm $(DESTDIR)/etc/udev/rules.d/multipath.rules
|
rm $(DESTDIR)/etc/udev/rules.d/multipath.rules
|
||||||
rm $(DESTDIR)$(bindir)/$(EXEC)
|
rm $(DESTDIR)$(bindir)/$(EXEC)
|
||||||
@ -19,10 +19,11 @@ Index: multipath-tools-080515/multipath/Makefile
|
|||||||
rm $(DESTDIR)$(mandir)/$(EXEC).8.gz
|
rm $(DESTDIR)$(mandir)/$(EXEC).8.gz
|
||||||
rm $(DESTDIR)$(man5dir)/$(EXEC).conf.5.gz
|
rm $(DESTDIR)$(man5dir)/$(EXEC).conf.5.gz
|
||||||
|
|
||||||
Index: multipath-tools-080515/multipath/mpath_wait
|
diff --git a/multipath/mpath_wait b/multipath/mpath_wait
|
||||||
===================================================================
|
new file mode 100644
|
||||||
|
index 0000000..d4047cc
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ multipath-tools-080515/multipath/mpath_wait
|
+++ b/multipath/mpath_wait
|
||||||
@@ -0,0 +1,17 @@
|
@@ -0,0 +1,17 @@
|
||||||
+#!/bin/bash
|
+#!/bin/bash
|
||||||
+
|
+
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: multipath-tools/multipath/Makefile
|
diff --git a/multipath/Makefile b/multipath/Makefile
|
||||||
===================================================================
|
index fe377d8..b2c4fa6 100644
|
||||||
--- multipath-tools.orig/multipath/Makefile
|
--- a/multipath/Makefile
|
||||||
+++ multipath-tools/multipath/Makefile
|
+++ b/multipath/Makefile
|
||||||
@@ -23,7 +23,7 @@ install:
|
@@ -22,14 +22,14 @@ install:
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
|
$(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
|
||||||
$(INSTALL_PROGRAM) -m 755 $(EXEC) mpath_wait $(DESTDIR)$(bindir)/
|
$(INSTALL_PROGRAM) -m 755 $(EXEC) mpath_wait $(DESTDIR)$(bindir)/
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)/etc/udev/rules.d
|
$(INSTALL_PROGRAM) -d $(DESTDIR)/etc/udev/rules.d
|
||||||
@ -11,8 +11,7 @@ Index: multipath-tools/multipath/Makefile
|
|||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(mandir)
|
$(INSTALL_PROGRAM) -d $(DESTDIR)$(mandir)
|
||||||
$(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
|
$(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(man5dir)
|
$(INSTALL_PROGRAM) -d $(DESTDIR)$(man5dir)
|
||||||
@@ -34,7 +34,7 @@ install:
|
$(INSTALL_PROGRAM) -m 644 $(EXEC).conf.5.gz $(DESTDIR)$(man5dir)
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)/var/lib/multipath
|
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
- rm $(DESTDIR)/etc/udev/rules.d/multipath.rules
|
- rm $(DESTDIR)/etc/udev/rules.d/multipath.rules
|
||||||
@ -20,10 +19,10 @@ Index: multipath-tools/multipath/Makefile
|
|||||||
rm $(DESTDIR)$(bindir)/$(EXEC)
|
rm $(DESTDIR)$(bindir)/$(EXEC)
|
||||||
rm $(DESTDIR)$(bindir)/mpath_wait
|
rm $(DESTDIR)$(bindir)/mpath_wait
|
||||||
rm $(DESTDIR)$(mandir)/$(EXEC).8.gz
|
rm $(DESTDIR)$(mandir)/$(EXEC).8.gz
|
||||||
Index: multipath-tools/multipath/multipath.rules
|
diff --git a/multipath/multipath.rules b/multipath/multipath.rules
|
||||||
===================================================================
|
index ac97749..ad2ff2a 100644
|
||||||
--- multipath-tools.orig/multipath/multipath.rules
|
--- a/multipath/multipath.rules
|
||||||
+++ multipath-tools/multipath/multipath.rules
|
+++ b/multipath/multipath.rules
|
||||||
@@ -1,7 +1,8 @@
|
@@ -1,7 +1,8 @@
|
||||||
-#
|
-#
|
||||||
-# udev rules for multipathing.
|
-# udev rules for multipathing.
|
||||||
@ -31,10 +30,11 @@ Index: multipath-tools/multipath/multipath.rules
|
|||||||
-#
|
-#
|
||||||
-
|
-
|
||||||
-# socket for uevents
|
-# socket for uevents
|
||||||
|
-SUBSYSTEM=="block", RUN+="socket:/org/kernel/dm/multipath_event"
|
||||||
+# multipath wants the devmaps presented as meaninglful device names
|
+# multipath wants the devmaps presented as meaninglful device names
|
||||||
+# so name them after their devmap name
|
+# so name them after their devmap name
|
||||||
+SUBSYSTEM!="block", GOTO="end_mpath"
|
+SUBSYSTEM!="block", GOTO="end_mpath"
|
||||||
RUN+="socket:/org/kernel/dm/multipath_event"
|
+RUN+="socket:/org/kernel/dm/multipath_event"
|
||||||
+KERNEL!="dm-[0-9]*", GOTO="end_mpath"
|
+KERNEL!="dm-[0-9]*", GOTO="end_mpath"
|
||||||
+PROGRAM!="/sbin/mpath_wait %M %m", GOTO="end_mpath"
|
+PROGRAM!="/sbin/mpath_wait %M %m", GOTO="end_mpath"
|
||||||
+ACTION=="add", RUN+="/sbin/dmsetup ls --target multipath --exec '/sbin/kpartx -a -p p' -j %M -m %m"
|
+ACTION=="add", RUN+="/sbin/dmsetup ls --target multipath --exec '/sbin/kpartx -a -p p' -j %M -m %m"
|
||||||
|
@ -1,36 +1,8 @@
|
|||||||
Index: multipath-tools/libmultipath/defaults.h
|
Index: multipath-tools-090407/libmultipath/hwtable.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- multipath-tools.orig/libmultipath/defaults.h
|
--- multipath-tools-090407.orig/libmultipath/hwtable.c 2009-04-07 15:21:33.000000000 -0500
|
||||||
+++ multipath-tools/libmultipath/defaults.h
|
+++ multipath-tools-090407/libmultipath/hwtable.c 2009-04-07 09:16:31.000000000 -0500
|
||||||
@@ -1,4 +1,4 @@
|
@@ -554,7 +554,7 @@ static struct hwentry default_hw[] = {
|
||||||
-#define DEFAULT_GETUID "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+#define DEFAULT_GETUID "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
#define DEFAULT_UDEVDIR "/dev"
|
|
||||||
#define DEFAULT_MULTIPATHDIR "/lib/multipath"
|
|
||||||
#define DEFAULT_SELECTOR "round-robin 0"
|
|
||||||
Index: multipath-tools/libmultipath/hwtable.c
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/libmultipath/hwtable.c
|
|
||||||
+++ multipath-tools/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 -s /block/%n",
|
|
||||||
+ .getuid = "/sbin/scsi_id -n -g -u -s /block/%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 -s /block/%n",
|
|
||||||
+ .getuid = "/sbin/scsi_id -g -u -ppre-spc3-83 -s /block/%n",
|
|
||||||
.features = DEFAULT_FEATURES,
|
|
||||||
.hwhandler = DEFAULT_HWHANDLER,
|
|
||||||
.selector = DEFAULT_SELECTOR,
|
|
||||||
@@ -485,7 +485,7 @@ static struct hwentry default_hw[] = {
|
|
||||||
.vendor = "IBM",
|
.vendor = "IBM",
|
||||||
.product = "S/390 DASD ECKD",
|
.product = "S/390 DASD ECKD",
|
||||||
.bl_product = "S/390.*",
|
.bl_product = "S/390.*",
|
||||||
@ -39,554 +11,17 @@ Index: multipath-tools/libmultipath/hwtable.c
|
|||||||
.features = "1 queue_if_no_path",
|
.features = "1 queue_if_no_path",
|
||||||
.hwhandler = DEFAULT_HWHANDLER,
|
.hwhandler = DEFAULT_HWHANDLER,
|
||||||
.selector = DEFAULT_SELECTOR,
|
.selector = DEFAULT_SELECTOR,
|
||||||
@@ -722,6 +722,22 @@ static struct hwentry default_hw[] = {
|
Index: multipath-tools-090407/multipath/multipath.conf.redhat
|
||||||
.checker_name = RDAC,
|
|
||||||
.prio_name = PRIO_RDAC,
|
|
||||||
},
|
|
||||||
+ /* DELL arrays */
|
|
||||||
+ {
|
|
||||||
+ .vendor = "DELL",
|
|
||||||
+ .product = "MD3000",
|
|
||||||
+ .getuid = DEFAULT_GETUID,
|
|
||||||
+ .features = DEFAULT_FEATURES,
|
|
||||||
+ .hwhandler = "1 rdac",
|
|
||||||
+ .selector = DEFAULT_SELECTOR,
|
|
||||||
+ .pgpolicy = GROUP_BY_PRIO,
|
|
||||||
+ .pgfailback = -FAILBACK_MANUAL,
|
|
||||||
+ .rr_weight = RR_WEIGHT_NONE,
|
|
||||||
+ .no_path_retry = NO_PATH_RETRY_UNDEF,
|
|
||||||
+ .minio = DEFAULT_MINIO,
|
|
||||||
+ .checker_name = RDAC,
|
|
||||||
+ .prio_name = PRIO_RDAC,
|
|
||||||
+ },
|
|
||||||
/*
|
|
||||||
* EOL
|
|
||||||
*/
|
|
||||||
Index: multipath-tools/multipath.conf.annotated
|
|
||||||
===================================================================
|
===================================================================
|
||||||
--- multipath-tools.orig/multipath.conf.annotated
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
||||||
+++ multipath-tools/multipath.conf.annotated
|
+++ multipath-tools-090407/multipath/multipath.conf.redhat 2009-04-07 09:16:31.000000000 -0500
|
||||||
@@ -55,9 +55,9 @@
|
|
||||||
# # scope : multipath
|
|
||||||
# # desc : the default program and args to callout to obtain a unique
|
|
||||||
# # path identifier. Absolute path required
|
|
||||||
-# # default : /lib/udev/scsi_id -g -u -s
|
|
||||||
+# # default : /sbin/scsi_id -g -u -s
|
|
||||||
# #
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : prio
|
|
||||||
@@ -336,7 +336,7 @@
|
|
||||||
# # desc : the program and args to callout to obtain a unique
|
|
||||||
# # path identifier. Absolute path required
|
|
||||||
# #
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : path_selector
|
|
||||||
Index: multipath-tools/multipath.conf.defaults
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath.conf.defaults
|
|
||||||
+++ multipath-tools/multipath.conf.defaults
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
# polling_interval 5
|
|
||||||
# selector "round-robin 0"
|
|
||||||
# path_grouping_policy failover
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# prio const
|
|
||||||
# path_checker directio
|
|
||||||
# rr_min_io 1000
|
|
||||||
@@ -26,7 +26,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "APPLE*"
|
|
||||||
# product "Xserve RAID"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -39,7 +39,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "3PARdata"
|
|
||||||
# product "VV"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -52,7 +52,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "DEC"
|
|
||||||
# product "HSG80"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 hp-sw"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -65,7 +65,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "A6189A"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -79,7 +79,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "(COMPAQ|HP)"
|
|
||||||
# product "(MSA|HSV)1.0.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 hp-sw"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -93,7 +93,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "MSA VOLUME"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -123,7 +123,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "(COMPAQ|HP)"
|
|
||||||
# product "HSV1[01]1|HSV2[01]0|HSV300"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -138,7 +138,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "MSA2[02]12*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -153,7 +153,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "LOGICAL VOLUME.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -n -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -n -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -168,7 +168,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "DDN"
|
|
||||||
# product "SAN DataDirector"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -181,7 +181,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "EMC"
|
|
||||||
# product "SYMMETRIX"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -ppre-spc3-83 -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -ppre-spc3-83 -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -195,7 +195,7 @@
|
|
||||||
# vendor "DGC"
|
|
||||||
# product ".*"
|
|
||||||
# product_blacklist "LUNZ"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# prio_callout "/sbin/mpath_prio_emc /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 emc"
|
|
||||||
@@ -211,7 +211,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "FSC"
|
|
||||||
# product "CentricStor"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -224,7 +224,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "(HITACHI|HP)"
|
|
||||||
# product "OPEN-.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -237,7 +237,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HITACHI"
|
|
||||||
# product "DF.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -251,7 +251,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "ProFibre 4000R"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -264,7 +264,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1722-600"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -279,7 +279,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1742"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -294,7 +294,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1814"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -309,7 +309,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1815"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -324,7 +324,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "3526"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -339,7 +339,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "3542"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -352,7 +352,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "2105(800|F20)"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -365,7 +365,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1750500"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -379,7 +379,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "2107900"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -392,7 +392,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "2145"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -407,7 +407,7 @@
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "S/390 DASD ECKD"
|
|
||||||
# product_blacklist "S/390.*"
|
|
||||||
-# getuid_callout "/sbin/dasdinfo -u -b %n"
|
|
||||||
+# getuid_callout "/sbin/dasd_id /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -420,7 +420,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "NETAPP"
|
|
||||||
# product "LUN.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -434,7 +434,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "Nseries.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -448,7 +448,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "Pillar"
|
|
||||||
# product "Axiom.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -461,7 +461,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SGI"
|
|
||||||
# product "TP9[13]00"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -474,7 +474,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SGI"
|
|
||||||
# product "TP9[45]00"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -489,7 +489,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SGI"
|
|
||||||
# product "IS.*"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -504,7 +504,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "STK"
|
|
||||||
# product "OPENstorage D280"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -518,7 +518,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SUN"
|
|
||||||
# product "(StorEdge 3510|T4)"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -544,7 +544,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SUN"
|
|
||||||
# product "CSM200_R"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -559,7 +559,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SUN"
|
|
||||||
# product "LCSM100_F"
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -571,4 +571,18 @@
|
|
||||||
# path_checker rdac
|
|
||||||
# prio rdac
|
|
||||||
# }
|
|
||||||
+# device {
|
|
||||||
+# vendor "DELL"
|
|
||||||
+# product "MD3000"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# features "0"
|
|
||||||
+# hardware_handler "1 rdac"
|
|
||||||
+# path_selector "round-robin 0"
|
|
||||||
+# path_grouping_policy group_by_prio
|
|
||||||
+# failback manual
|
|
||||||
+# rr_weight uniform
|
|
||||||
+# rr_min_io 1000
|
|
||||||
+# path_checker rdac
|
|
||||||
+# prio rdac
|
|
||||||
+# }
|
|
||||||
#}
|
|
||||||
Index: multipath-tools/multipath.conf.synthetic
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath.conf.synthetic
|
|
||||||
+++ multipath-tools/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 "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# prio const
|
|
||||||
# path_checker directio
|
|
||||||
# rr_min_io 100
|
|
||||||
@@ -52,7 +52,7 @@
|
|
||||||
# vendor "COMPAQ "
|
|
||||||
# product "HSV110 (C)COMPAQ"
|
|
||||||
# path_grouping_policy multibus
|
|
||||||
-# getuid_callout "/lib/udev/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
# path_checker directio
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
Index: multipath-tools/Makefile.inc
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/Makefile.inc
|
|
||||||
+++ multipath-tools/Makefile.inc
|
|
||||||
@@ -20,7 +20,7 @@ libudevdir = ${prefix}/lib/udev
|
|
||||||
multipathdir = $(TOPDIR)/libmultipath
|
|
||||||
mandir = $(prefix)/usr/share/man/man8
|
|
||||||
man5dir = $(prefix)/usr/share/man/man5
|
|
||||||
-rcdir = $(prefix)/etc/init.d
|
|
||||||
+rcdir = $(prefix)/etc/rc.d/init.d
|
|
||||||
libdir = $(prefix)/lib/multipath
|
|
||||||
|
|
||||||
GZIP = /bin/gzip -9 -c
|
|
||||||
Index: multipath-tools/multipathd/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipathd/Makefile
|
|
||||||
+++ multipath-tools/multipathd/Makefile
|
|
||||||
@@ -35,6 +35,7 @@ install:
|
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
|
|
||||||
$(INSTALL_PROGRAM) -m 755 $(EXEC) $(DESTDIR)$(bindir)
|
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(rcdir)
|
|
||||||
+ $(INSTALL_PROGRAM) -m 755 multipathd.init.redhat $(DESTDIR)$(rcdir)/$(EXEC)
|
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(mandir)
|
|
||||||
$(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
|
|
||||||
|
|
||||||
Index: multipath-tools/multipathd/multipathd.init.redhat
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipathd/multipathd.init.redhat
|
|
||||||
+++ multipath-tools/multipathd/multipathd.init.redhat
|
|
||||||
@@ -1,13 +1,9 @@
|
|
||||||
#!/bin/bash
|
|
||||||
-
|
|
||||||
-#
|
|
||||||
-# /etc/rc.d/init.d/multipathd
|
|
||||||
#
|
|
||||||
-# Starts the multipath daemon
|
|
||||||
+# multipathd Starts the multipath daemon
|
|
||||||
#
|
|
||||||
# chkconfig: - 13 87
|
|
||||||
-# description: Manage device-mapper multipath devices
|
|
||||||
-# processname: multipathd
|
|
||||||
+# description: Manages device-mapper multipath devices
|
|
||||||
|
|
||||||
DAEMON=/sbin/multipathd
|
|
||||||
prog=`basename $DAEMON`
|
|
||||||
@@ -16,14 +12,8 @@ lockdir=/var/lock/subsys
|
|
||||||
sysconfig=/etc/sysconfig
|
|
||||||
|
|
||||||
|
|
||||||
-system=redhat
|
|
||||||
-
|
|
||||||
-if [ $system = redhat ]; then
|
|
||||||
- # Source function library.
|
|
||||||
- . $initdir/functions
|
|
||||||
-fi
|
|
||||||
+. $initdir/functions
|
|
||||||
|
|
||||||
-test -x $DAEMON || exit 0
|
|
||||||
test -r $sysconfig/$prog && . $sysconfig/$prog
|
|
||||||
|
|
||||||
RETVAL=0
|
|
||||||
@@ -33,6 +23,7 @@ RETVAL=0
|
|
||||||
#
|
|
||||||
|
|
||||||
start() {
|
|
||||||
+ test -x $DAEMON || exit 5
|
|
||||||
echo -n $"Starting $prog daemon: "
|
|
||||||
daemon $DAEMON
|
|
||||||
RETVAL=$?
|
|
||||||
@@ -74,7 +65,7 @@ reload)
|
|
||||||
restart)
|
|
||||||
restart
|
|
||||||
;;
|
|
||||||
-condrestart)
|
|
||||||
+condrestart|try-restart)
|
|
||||||
if [ -f $lockdir/$prog ]; then
|
|
||||||
restart
|
|
||||||
fi
|
|
||||||
@@ -85,7 +76,7 @@ status)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo $"Usage: $0 {start|stop|status|restart|condrestart|reload}"
|
|
||||||
- RETVAL=1
|
|
||||||
+ RETVAL=2
|
|
||||||
esac
|
|
||||||
|
|
||||||
exit $RETVAL
|
|
||||||
Index: multipath-tools/multipath/Makefile
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath/Makefile
|
|
||||||
+++ multipath-tools/multipath/Makefile
|
|
||||||
@@ -28,6 +28,10 @@ install:
|
|
||||||
$(INSTALL_PROGRAM) -m 644 $(EXEC).8.gz $(DESTDIR)$(mandir)
|
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(man5dir)
|
|
||||||
$(INSTALL_PROGRAM) -m 644 $(EXEC).conf.5.gz $(DESTDIR)$(man5dir)
|
|
||||||
+ if [ ! -e $(DESTDIR)//etc/multipath.conf ]; then \
|
|
||||||
+ $(INSTALL_PROGRAM) -m 644 multipath.conf.redhat $(DESTDIR)/etc/multipath.conf; \
|
|
||||||
+ fi
|
|
||||||
+ $(INSTALL_PROGRAM) -d $(DESTDIR)/var/lib/multipath
|
|
||||||
|
|
||||||
uninstall:
|
|
||||||
rm $(DESTDIR)/etc/udev/rules.d/multipath.rules
|
|
||||||
Index: multipath-tools/multipath/multipath.conf.redhat
|
|
||||||
===================================================================
|
|
||||||
--- /dev/null
|
|
||||||
+++ multipath-tools/multipath/multipath.conf.redhat
|
|
||||||
@@ -0,0 +1,97 @@
|
@@ -0,0 +1,97 @@
|
||||||
+# This is a basic configuration file with some examples, for device mapper
|
+# This is a basic configuration file with some examples, for device mapper
|
||||||
+# multipath.
|
+# multipath.
|
||||||
+# For a complete list of the default configuration values, see
|
+# For a complete list of the default configuration values, see
|
||||||
+# /usr/share/doc/device-mapper-multipath-0.4.8/multipath.conf.defaults
|
+# /usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf.defaults
|
||||||
+# For a list of configuration options with descriptions, see
|
+# For a list of configuration options with descriptions, see
|
||||||
+# /usr/share/doc/device-mapper-multipath-0.4.8/multipath.conf.annotated
|
+# /usr/share/doc/device-mapper-multipath-0.4.9/multipath.conf.annotated
|
||||||
+
|
+
|
||||||
+
|
+
|
||||||
+# Blacklist all devices by default. Remove this to enable multipathing
|
+# Blacklist all devices by default. Remove this to enable multipathing
|
||||||
@ -618,7 +53,7 @@ Index: multipath-tools/multipath/multipath.conf.redhat
|
|||||||
+# polling_interval 10
|
+# polling_interval 10
|
||||||
+# selector "round-robin 0"
|
+# selector "round-robin 0"
|
||||||
+# path_grouping_policy multibus
|
+# path_grouping_policy multibus
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
+# getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n"
|
||||||
+# prio alua
|
+# prio alua
|
||||||
+# path_checker readsector0
|
+# path_checker readsector0
|
||||||
+# rr_min_io 100
|
+# rr_min_io 100
|
||||||
@ -664,7 +99,7 @@ Index: multipath-tools/multipath/multipath.conf.redhat
|
|||||||
+# vendor "COMPAQ "
|
+# vendor "COMPAQ "
|
||||||
+# product "HSV110 (C)COMPAQ"
|
+# product "HSV110 (C)COMPAQ"
|
||||||
+# path_grouping_policy multibus
|
+# path_grouping_policy multibus
|
||||||
+# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
+# getuid_callout "/lib/udev/scsi_id --whitelisted --device=/dev/%n"
|
||||||
+# path_checker readsector0
|
+# path_checker readsector0
|
||||||
+# path_selector "round-robin 0"
|
+# path_selector "round-robin 0"
|
||||||
+# hardware_handler "0"
|
+# hardware_handler "0"
|
||||||
@ -678,10 +113,10 @@ Index: multipath-tools/multipath/multipath.conf.redhat
|
|||||||
+# path_grouping_policy multibus
|
+# path_grouping_policy multibus
|
||||||
+# }
|
+# }
|
||||||
+#}
|
+#}
|
||||||
Index: multipath-tools/kpartx/Makefile
|
Index: multipath-tools-090407/kpartx/Makefile
|
||||||
===================================================================
|
===================================================================
|
||||||
--- multipath-tools.orig/kpartx/Makefile
|
--- multipath-tools-090407.orig/kpartx/Makefile 2009-04-07 15:21:33.000000000 -0500
|
||||||
+++ multipath-tools/kpartx/Makefile
|
+++ multipath-tools-090407/kpartx/Makefile 2009-04-07 09:16:31.000000000 -0500
|
||||||
@@ -20,10 +20,10 @@ $(EXEC): $(OBJS)
|
@@ -20,10 +20,10 @@ $(EXEC): $(OBJS)
|
||||||
install: $(EXEC) $(EXEC).8
|
install: $(EXEC) $(EXEC).8
|
||||||
$(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
|
$(INSTALL_PROGRAM) -d $(DESTDIR)$(bindir)
|
||||||
|
@ -1,478 +0,0 @@
|
|||||||
Index: multipath-tools/libmultipath/defaults.h
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/libmultipath/defaults.h
|
|
||||||
+++ multipath-tools/libmultipath/defaults.h
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-#define DEFAULT_GETUID "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+#define DEFAULT_GETUID "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
#define DEFAULT_UDEVDIR "/dev"
|
|
||||||
#define DEFAULT_MULTIPATHDIR "/lib/multipath"
|
|
||||||
#define DEFAULT_SELECTOR "round-robin 0"
|
|
||||||
Index: multipath-tools/libmultipath/hwtable.c
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/libmultipath/hwtable.c
|
|
||||||
+++ multipath-tools/libmultipath/hwtable.c
|
|
||||||
@@ -172,7 +172,7 @@ static struct hwentry default_hw[] = {
|
|
||||||
/* HP Smart Array */
|
|
||||||
.vendor = "HP",
|
|
||||||
.product = "LOGICAL VOLUME.*",
|
|
||||||
- .getuid = "/sbin/scsi_id -n -g -u -s /block/%n",
|
|
||||||
+ .getuid = "/sbin/scsi_id --whitelisted /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 = "/sbin/scsi_id -g -u -ppre-spc3-83 -s /block/%n",
|
|
||||||
+ .getuid = "/sbin/scsi_id --page=pre-spc3-83 --whitelisted /dev/%n",
|
|
||||||
.features = DEFAULT_FEATURES,
|
|
||||||
.hwhandler = DEFAULT_HWHANDLER,
|
|
||||||
.selector = DEFAULT_SELECTOR,
|
|
||||||
@@ -679,7 +679,7 @@ static struct hwentry default_hw[] = {
|
|
||||||
{
|
|
||||||
.vendor = "PIVOT3",
|
|
||||||
.product = "RAIGE VOLUME",
|
|
||||||
- .getuid = "/sbin/scsi_id -p 0x80 -g -u -s /block/%n",
|
|
||||||
+ .getuid = "/sbin/scsi_id --page=0x80 --whitelisted /dev/%n",
|
|
||||||
.features = "1 queue_if_no_path",
|
|
||||||
.hwhandler = DEFAULT_HWHANDLER,
|
|
||||||
.selector = DEFAULT_SELECTOR,
|
|
||||||
Index: multipath-tools/multipath.conf.annotated
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath.conf.annotated
|
|
||||||
+++ multipath-tools/multipath.conf.annotated
|
|
||||||
@@ -55,9 +55,9 @@
|
|
||||||
# # scope : multipath
|
|
||||||
# # desc : the default program and args to callout to obtain a unique
|
|
||||||
# # path identifier. Absolute path required
|
|
||||||
-# # default : /sbin/scsi_id -g -u -s
|
|
||||||
+# # default : /sbin/scsi_id --whitelisted
|
|
||||||
# #
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : prio
|
|
||||||
@@ -336,7 +336,7 @@
|
|
||||||
# # desc : the program and args to callout to obtain a unique
|
|
||||||
# # path identifier. Absolute path required
|
|
||||||
# #
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
#
|
|
||||||
# #
|
|
||||||
# # name : path_selector
|
|
||||||
Index: multipath-tools/multipath.conf.defaults
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath.conf.defaults
|
|
||||||
+++ multipath-tools/multipath.conf.defaults
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
# polling_interval 5
|
|
||||||
# selector "round-robin 0"
|
|
||||||
# path_grouping_policy failover
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# prio const
|
|
||||||
# path_checker directio
|
|
||||||
# rr_min_io 1000
|
|
||||||
@@ -26,7 +26,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "APPLE*"
|
|
||||||
# product "Xserve RAID"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -39,7 +39,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "3PARdata"
|
|
||||||
# product "VV"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -52,7 +52,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "DEC"
|
|
||||||
# product "HSG80"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 hp-sw"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -65,7 +65,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "A6189A"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -79,7 +79,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "(COMPAQ|HP)"
|
|
||||||
# product "(MSA|HSV)1.0.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 hp-sw"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -93,7 +93,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "MSA VOLUME"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -123,7 +123,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "(COMPAQ|HP)"
|
|
||||||
# product "HSV1[01]1|HSV2[01]0|HSV300"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -138,7 +138,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "MSA2[02]12*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -153,7 +153,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HP"
|
|
||||||
# product "LOGICAL VOLUME.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -n -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -168,7 +168,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "DDN"
|
|
||||||
# product "SAN DataDirector"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -181,7 +181,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "EMC"
|
|
||||||
# product "SYMMETRIX"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -ppre-spc3-83 -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --page=pre-spc3-83 --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -195,7 +195,7 @@
|
|
||||||
# vendor "DGC"
|
|
||||||
# product ".*"
|
|
||||||
# product_blacklist "LUNZ"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# prio_callout "/sbin/mpath_prio_emc /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 emc"
|
|
||||||
@@ -211,7 +211,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "FSC"
|
|
||||||
# product "CentricStor"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -224,7 +224,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "(HITACHI|HP)"
|
|
||||||
# product "OPEN-.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -237,7 +237,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "HITACHI"
|
|
||||||
# product "DF.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -251,7 +251,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "ProFibre 4000R"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -264,7 +264,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1722-600"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -279,7 +279,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1742"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -294,7 +294,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1814"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -309,7 +309,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1815"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -324,7 +324,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "3526"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -339,7 +339,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "3542"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -352,7 +352,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "2105(800|F20)"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -365,7 +365,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "1750500"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -379,7 +379,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "2107900"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -392,7 +392,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "2145"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -420,7 +420,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "NETAPP"
|
|
||||||
# product "LUN.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -434,7 +434,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "IBM"
|
|
||||||
# product "Nseries.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -448,7 +448,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "Pillar"
|
|
||||||
# product "Axiom.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -461,7 +461,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SGI"
|
|
||||||
# product "TP9[13]00"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -474,7 +474,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SGI"
|
|
||||||
# product "TP9[45]00"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -489,7 +489,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SGI"
|
|
||||||
# product "IS.*"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -504,7 +504,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "STK"
|
|
||||||
# product "OPENstorage D280"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -518,7 +518,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SUN"
|
|
||||||
# product "(StorEdge 3510|T4)"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -531,7 +531,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "PIVOT3"
|
|
||||||
# product "RAIGE VOLUME"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -p 0x80 -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --page=0x80 --whitelisted /dev/%n"
|
|
||||||
# features "1 queue_if_no_path"
|
|
||||||
# hardware_handler "0"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -544,7 +544,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SUN"
|
|
||||||
# product "CSM200_R"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -559,7 +559,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "SUN"
|
|
||||||
# product "LCSM100_F"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
@@ -574,7 +574,7 @@
|
|
||||||
# device {
|
|
||||||
# vendor "DELL"
|
|
||||||
# product "MD3000"
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# features "0"
|
|
||||||
# hardware_handler "1 rdac"
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
Index: multipath-tools/multipath.conf.synthetic
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath.conf.synthetic
|
|
||||||
+++ multipath-tools/multipath.conf.synthetic
|
|
||||||
@@ -7,7 +7,7 @@
|
|
||||||
# polling_interval 10
|
|
||||||
# selector "round-robin 0"
|
|
||||||
# path_grouping_policy multibus
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# prio const
|
|
||||||
# path_checker directio
|
|
||||||
# rr_min_io 100
|
|
||||||
@@ -52,7 +52,7 @@
|
|
||||||
# vendor "COMPAQ "
|
|
||||||
# product "HSV110 (C)COMPAQ"
|
|
||||||
# path_grouping_policy multibus
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id -whitelisted /block/%n"
|
|
||||||
# path_checker directio
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
# hardware_handler "0"
|
|
||||||
Index: multipath-tools/multipath/multipath.conf.5
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath/multipath.conf.5
|
|
||||||
+++ multipath-tools/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 --whitelisted
|
|
||||||
.TP
|
|
||||||
.B prio_callout
|
|
||||||
The default program and args to callout to obtain a path priority
|
|
||||||
Index: multipath-tools/multipath/multipath.conf.redhat
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipath/multipath.conf.redhat
|
|
||||||
+++ multipath-tools/multipath/multipath.conf.redhat
|
|
||||||
@@ -35,7 +35,7 @@ defaults {
|
|
||||||
# polling_interval 10
|
|
||||||
# selector "round-robin 0"
|
|
||||||
# path_grouping_policy multibus
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# prio alua
|
|
||||||
# path_checker readsector0
|
|
||||||
# rr_min_io 100
|
|
||||||
@@ -81,7 +81,7 @@ defaults {
|
|
||||||
# vendor "COMPAQ "
|
|
||||||
# product "HSV110 (C)COMPAQ"
|
|
||||||
# path_grouping_policy multibus
|
|
||||||
-# getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
|
|
||||||
+# getuid_callout "/sbin/scsi_id --whitelisted /dev/%n"
|
|
||||||
# path_checker readsector0
|
|
||||||
# path_selector "round-robin 0"
|
|
||||||
# hardware_handler "0"
|
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
3ffa9a7f768fab9749689fe2624a8551 multipath-tools-080804.tgz
|
450d0715048f3a8c82082ad2b9e5a2b3 multipath-tools-090429.tgz
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
Index: multipath-tools-080515/kpartx/lopart.c
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools-080515.orig/kpartx/lopart.c
|
|
||||||
+++ multipath-tools-080515/kpartx/lopart.c
|
|
||||||
@@ -30,7 +30,7 @@
|
|
||||||
#if defined(__hppa__) || defined(__powerpc64__) || defined (__alpha__) \
|
|
||||||
|| defined (__x86_64__)
|
|
||||||
typedef unsigned long __kernel_old_dev_t;
|
|
||||||
-#elif defined(__powerpc__) || defined(__ia64__)
|
|
||||||
+#elif defined(__powerpc__) || defined(__ia64__) || (defined(__sparc__) && defined (__arch64__))
|
|
||||||
typedef unsigned int __kernel_old_dev_t;
|
|
||||||
#else
|
|
||||||
typedef unsigned short __kernel_old_dev_t;
|
|
@ -1,28 +0,0 @@
|
|||||||
Index: multipath-tools/multipathd/main.c
|
|
||||||
===================================================================
|
|
||||||
--- multipath-tools.orig/multipathd/main.c
|
|
||||||
+++ multipath-tools/multipathd/main.c
|
|
||||||
@@ -602,14 +602,20 @@ uxsock_trigger (char * str, char ** repl
|
|
||||||
static int
|
|
||||||
uev_discard(char * devpath)
|
|
||||||
{
|
|
||||||
+ char *tmp;
|
|
||||||
char a[10], b[10];
|
|
||||||
|
|
||||||
/*
|
|
||||||
* keep only block devices, discard partitions
|
|
||||||
*/
|
|
||||||
- if (sscanf(devpath, "/block/%10s", a) != 1 ||
|
|
||||||
- sscanf(devpath, "/block/%10[^/]/%10s", a, b) == 2) {
|
|
||||||
- condlog(4, "discard event on %s", devpath);
|
|
||||||
+ tmp = strstr(devpath, "/block/");
|
|
||||||
+ if (tmp == NULL){
|
|
||||||
+ condlog(0, "no /block/ in '%s'", devpath);
|
|
||||||
+ return 1;
|
|
||||||
+ }
|
|
||||||
+ if (sscanf(tmp, "/block/%10s", a) != 1 ||
|
|
||||||
+ sscanf(tmp, "/block/%10[^/]/%10s", a, b) == 2) {
|
|
||||||
+ condlog(0, "discard event on %s", devpath);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
return 0;
|
|
Loading…
Reference in New Issue
Block a user