Displaying paths controlled by a DMP node, controller, enclosure, or array port

The vxdmpadm getsubpaths command lists all of the paths known to Dynamic Multi-Pathing (DMP). The vxdmpadm getsubpaths command also provides options to list the subpaths through a particular DMP node, controller, enclosure, or array port. To list the paths through an array port, specify either a combination of enclosure name and array port id, or array port worldwide name (WWN).

To list all subpaths known to DMP:

# vxdmpadm getsubpaths
NAME      STATE[A]   PATH-TYPE[M] DMPNODENAME  ENCLR-NAME   CTLR   ATTRS
=============================================================================
sdaf      ENABLED(A) PRIMARY      ams_wms0_130 ams_wms0     c2       -
sdc       ENABLED    SECONDARY    ams_wms0_130 ams_wms0     c3       -
sdb       ENABLED(A)   -          disk_24      disk         c0       -
sda       ENABLED(A)   -          disk_25      disk         c0       -
sdav      ENABLED(A) PRIMARY      emc_clariion0_1017 emc_clariion0 c3       -
sdbf      ENABLED    SECONDARY    emc_clariion0_1017 emc_clariion0 c3       -

The vxdmpadm getsubpaths command combined with the dmpnodename attribute displays all the paths to a LUN that are controlled by the specified DMP node name from the /dev/vx/dmp directory:

# vxdmpadm getsubpaths dmpnodename=sdu

NAME    STATE[A]  PATH-TYPE[M] CTLR-NAME ENCLR-TYPE ENCLR-NAME ATTRS
====================================================================
sdu     ENABLED(A) PRIMARY     c2        ACME       enc0       -
sdt     ENABLED    PRIMARY     c1        ACME       enc0       -

For A/A arrays, all enabled paths that are available for I/O are shown as ENABLED(A).

For A/P arrays in which the I/O policy is set to singleactive, only one path is shown as ENABLED(A). The other paths are enabled but not available for I/O. If the I/O policy is not set to singleactive, DMP can use a group of paths (all primary or all secondary) for I/O, which are shown as ENABLED(A).

Paths that are in the DISABLED state are not available for I/O operations.

A path that was manually disabled by the system administrator displays as DISABLED(M). A path that failed displays as DISABLED.

You can use getsubpaths to obtain information about all the paths that are connected to a particular HBA controller:

# vxdmpadm getsubpaths ctlr=c2

NAME  STATE[-]   PATH-TYPE[-] DMPNODENAME ENCLR-TYPE ENCLR-NAME ATTRS
===================================================================
sdk   ENABLED(A) PRIMARY      sdk         ACME       enc0       -
sdl   ENABLED(A) PRIMARY      sdl         ACME       enc0       -
sdm   DISABLED   SECONDARY    sdm         ACME       enc0       -
sdn   ENABLED    SECONDARY    sdn         ACME       enc0       -

You can also use getsubpaths to obtain information about all the paths that are connected to a port on an array. The array port can be specified by the name of the enclosure and the array port ID, or by the WWN identifier of the array port:

# vxdmpadm getsubpaths enclosure=enclosure portid=portid
# vxdmpadm getsubpaths pwwn=pwwn

For example, to list subpaths through an array port through the enclosure and the array port ID:

# vxdmpadm getsubpaths enclosure=emc_clariion0 portid=A5
NAME         STATE[A]   PATH-TYPE[M] DMPNODENAME  ENCLR-NAME   CTLR    ATTRS
================================================================================
sdav         ENABLED(A) PRIMARY      emc_clariion0_1017 emc_clariion0 c3        -
sdcd         ENABLED(A) PRIMARY      emc_clariion0_1017 emc_clariion0 c2        -
sdau         ENABLED(A) PRIMARY      emc_clariion0_1018 emc_clariion0 c3        -
sdcc         ENABLED(A) PRIMARY      emc_clariion0_1018 emc_clariion0 c2        -

For example, to list subpaths through an array port through the WWN:

# vxdmpadm getsubpaths pwwn=50:06:01:61:41:e0:3b:33
NAME         STATE[A]   PATH-TYPE[M] CTLR-NAME  ENCLR-TYPE   ENCLR-NAME    ATTRS
================================================================================
sdav         ENABLED(A)  PRIMARY      c3         EMC_CLARiiON  emc_clariion0     -
sdcd         ENABLED(A)  PRIMARY      c2         EMC_CLARiiON  emc_clariion0     -
sdau         ENABLED(A)  PRIMARY      c3         EMC_CLARiiON  emc_clariion0     -
sdcc         ENABLED(A)  PRIMARY      c2         EMC_CLARiiON  emc_clariion0     -
# vxdmpadm getsubpaths pwwn=20:00:00:E0:8B:06:5F:19

You can use getsubpaths to obtain information about all the subpaths of an enclosure.

# vxdmpadm getsubpaths enclosure=enclosure_name [ctlr=ctlrname]

To list all subpaths of an enclosure:

# vxdmpadm getsubpaths enclosure=emc_clariion0	
NAME         STATE[A]   PATH-TYPE[M] DMPNODENAME  ENCLR-NAME   CTLR    ATTRS
================================================================================
sdav         ENABLED(A) PRIMARY      emc_clariion0_1017 emc_clariion0 c3    -
sdbf         ENABLED    SECONDARY    emc_clariion0_1017 emc_clariion0 c3    -
sdau         ENABLED(A) PRIMARY      emc_clariion0_1018 emc_clariion0 c3    -
sdbe         ENABLED    SECONDARY    emc_clariion0_1018 emc_clariion0 c3    -

To list all subpaths of a controller on an enclosure:

# vxdmpadm getsubpaths enclosure=Disk ctlr=c1

By default, the output of the vxdmpadm getsubpaths command is sorted by enclosure name, DMP node name, and within that, path name.

To sort the output based on the pathname, the DMP node name, the enclosure name, or the host controller name, use the -s option.

To sort subpaths information, use the following command:

# vxdmpadm -s {path | dmpnode | enclosure | ctlr} getsubpaths \
[all | ctlr=ctlr_name | dmpnodename=dmp_device_name | \
enclosure=enclr_name [ctlr=ctlr_name | portid=array_port_ID] | \
pwwn=port_WWN | tpdnodename=tpd_node_name] 

See Setting customized names for DMP nodes.

More Information

Specifying the I/O policy