Bug 452869 - [RFE] Enhance mpath_prio_hds_modular to more intelligently determine primary/secondary path LUNs
Summary: [RFE] Enhance mpath_prio_hds_modular to more intelligently determine primary/...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: device-mapper-multipath
Version: 4.7
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: LVM and device-mapper development team
QA Contact: Corey Marthaler
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-06-25 14:43 UTC by Bryn M. Reeves
Modified: 2018-10-20 02:39 UTC (History)
17 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-08-26 15:39:58 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Bryn M. Reeves 2008-06-25 14:43:04 UTC
+++ This bug was initially created as a clone of Bug #452617 +++

Escalated to Bugzilla from IssueTracker

-- Additional comment from tao on 2008-06-24 00:22 EST --
We have an enhancement request regarding the /sbin/mpath_prio_hds_modular
utility which is shipped as part of device-mapper-multipath package.

That utility is used for inquiring against Active/Passive arrays' paths to see
which path ought to be primary and which ought to be secondary.  The way A/P
arrays work is that each lun has a default controller owning that path and
accessing that lun via non-default controller incurs a small performance
penatly... because of that you always want to access the luns via their
preferred paths.

The /sbin/mpath_prio_hds_modular when called against a path is used exactly for
that... for primary paths it returns 1 and for secondary paths it returns 0.

Example:

cwidb01 /ms/user/d/dankb/tmp 33# ./mpath_prio_hds_modular /dev/sda  0
cwidb01 /ms/user/d/dankb/tmp 34# ./mpath_prio_hds_modular /dev/sdb
1
cwidb01 /ms/user/d/dankb/tmp 35#


cwidb01 /ms/user/d/dankb/tmp 36# ./mpath_prio_hds_modular -v /dev/sda VENDOR: 
HITACHI
PRODUCT: DF600F         SERIAL:  0x0285
LDEV:    0x0000
CTRL:    1
PORT:    A
CTRL ODD, LDEV EVEN, PRIO 0
0
cwidb01 /ms/user/d/dankb/tmp 37# ./mpath_prio_hds_modular -v /dev/sdb
VENDOR:  HITACHI
PRODUCT: DF600F         SERIAL:  0x0285
LDEV:    0x0001
CTRL:    1
PORT:    A
CTRL ODD, LDEV ODD, PRIO 1
1
cwidb01 /ms/user/d/dankb/tmp 38#

The above just says that sda is the preferred path while sdb is not...  and the
-v output is just extra detail.

Now... the problem is that the logic which this utility is used to determine
which path is primary and which is secondary is solely based on the lun being
odd or even... that is not the case with most installations.  In our case, for
example, lun onwership is done by raid groups... and that is not being reflected
by mpath_prio_hds_modular's output as it's decision is only based on
oddness/evenness of the lun...

The code needs to be enhanced to actually query that from the array rather than
just make the decision purely based on lun number.

We thought maybe a later version of the pkg would have this fixed and just
downloaded multipath-tools-0.4.8 but see that it also has the primitive code
determining lun ownership.

Comment 4 RHEL Program Management 2008-08-26 15:39:58 UTC
Product Management has reviewed and declined this request.  You may appeal this
decision by reopening this request.


Note You need to log in before you can comment on or make changes to this bug.