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

The vxdmpadm getsubpaths command lists all of the paths known to 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 WWN.

To list all subpaths known to DMP:

# vxdmpadm getsubpaths
NAME      STATE[A]   PATH-TYPE[M] DMPNODENAME      ENCLR-NAME    CTLR     ATTRS
===============================================================================
hdisk1    ENABLED(A)   -          disk_0           disk          scsi0    -
hdisk0    ENABLED(A)   -          disk_1           disk          scsi0    -
hdisk107  ENABLED(A) PRIMARY      emc_clariion0_17 emc_clariion0 fscsi1   -
hdisk17   ENABLED    SECONDARY    emc_clariion0_17 emc_clariion0 fscsi0   -
hdisk108  ENABLED(A) PRIMARY      emc_clariion0_74 emc_clariion0 fscsi1   -
hdisk18   ENABLED    SECONDARY    emc_clariion0_74 emc_clariion0 fscsi0   -
hdisk109  ENABLED(A) PRIMARY      emc_clariion0_75 emc_clariion0 fscsi1   -
hdisk19   ENABLED    SECONDARY    emc_clariion0_75 emc_clariion0 fscsi0   -

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/rdmp directory:

# vxdmpadm getsubpaths dmpnodename=hdisk22

NAME    STATE[A]  PATH-TYPE[M] CTLR-NAME ENCLR-TYPE ENCLR-NAME ATTRS
====================================================================
hdisk22 ENABLED(A) PRIMARY     scsi2     ACME       enc0       -
hdisk21 ENABLED    PRIMARY     scsi1     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=fscsi1

NAME     STATE[A]   PATH-TYPE[M] DMPNODENAME      ENCLR-TYPE   ENCLR-NAME    ATTRS
==================================================================================
hdisk107 ENABLED(A) PRIMARY      emc_clariion0_17 EMC_CLARiiON emc_clariion0 -
hdisk62  ENABLED    SECONDARY    emc_clariion0_17 EMC_CLARiiON emc_clariion0 -
hdisk108 ENABLED(A) PRIMARY      emc_clariion0_74 EMC_CLARiiON emc_clariion0 -
hdisk63  ENABED     SECONDARY    emc_clariion0_74 EMC_CLARiiON emc_clariion0 -

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 worldwide name (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=A2
NAME     STATE[A]   PATH-TYPE[M] DMPNODENAME      ENCLR-NAME    CTLR   ATTRS
=============================================================================
hdisk111 ENABLED(A) PRIMARY      emc_clariion0_80 emc_clariion0 fscsi1 -
hdisk51  ENABLED(A) PRIMARY      emc_clariion0_80 emc_clariion0 fscsi0 -
hdisk112 ENABLED(A) PRIMARY      emc_clariion0_81 emc_clariion0 fscsi1 -
hdisk52  ENABLED(A) PRIMARY      emc_clariion0_81 emc_clariion0 fscsi0 -

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

# vxdmpadm getsubpaths pwwn=20:00:00:E0:8B:06:5F:19
NAME     STATE[A]   PATH-TYPE[M] DMPNODENAME      ENCLR-NAME    CTLR   ATTRS
=============================================================================
hdisk111 ENABLED(A) PRIMARY      emc_clariion0_80 emc_clariion0 fscsi1 -
hdisk51  ENABLED(A) PRIMARY      emc_clariion0_80 emc_clariion0 fscsi0 -
hdisk112 ENABLED(A) PRIMARY      emc_clariion0_81 emc_clariion0 fscsi1 -
hdisk52  ENABLED(A) PRIMARY      emc_clariion0_81 emc_clariion0 fscsi0 -

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
================================================================================
hdisk107  ENABLED(A) PRIMARY      emc_clariion0_17 emc_clariion0 fscsi1    -
hdisk17   ENABLED    SECONDARY    emc_clariion0_17 emc_clariion0 fscsi0    -
hdisk110  ENABLED(A) PRIMARY      emc_clariion0_76 emc_clariion0 fscsi1    -
hdisk20   ENABLED    SECONDARY    emc_clariion0_76 emc_clariion0 fscsi0    -

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] 

More Information

Specifying the DMP I/O policy