The Multiple Path I/O (MPIO) feature was introduced in AIX 5.2 to manage disks and LUNs with multiple paths. By default, MPIO is enabled on all disks and LUNs that have this capability, which prevents DMP or other third-party multi-pathing drivers (such as EMC PowerPath) from managing the paths to such devices.
To allow DMP or a third-party multi-pathing driver to manage multi-pathing instead of MPIO, you must install suitable Object Data Manager (ODM) definitions for the devices on the host. Without these ODM definitions, MPIO consolidates the paths, and DMP can only see a single path to a given device.
There are several reasons why you might want to configure DMP to manage multi-pathing instead of MPIO:
Using DMP can enhance array performance if an ODM defines properties such as queue depth, queue type, and timeout for the devices.
The I/O fencing features of the Storage Foundation HA or Storage Foundation Real Application Cluster software do not work with MPIO devices.
The Device Discover Layer (DDL) component of DMP provides value-added services including extended attributes like RAID levels, thin provisioning attributes, hardware mirrors, snapshots, transport type, SFGs, array port IDs. These services are not available for MPIO-controlled devices.
Use the following procedure to configure DMP in place of MPIO.
To disable MPIO
Contact the array vendor to obtain ODM definitions for the array type and the version of AIX on your system. The ODM definition should permit either DMP or the array vendor's multi-pathing driver to discover the devices in the supported array.
Some array vendors do not distribute ODM pre-definitions for their arrays for AIX. In this case, you can use the devices as hdisk devices, as long as MPIO does not claim these LUNs.
# vxvol -g diskgroup stopall
# vxprint -Aht -e v_open
# vxdg deport diskgroup
# rmdev -dl hdisk_device
Alternatively, use the smitty rmdev command.
# installp -agXd ODM_fileset ...
Alternately, you can use the smitty installp command.
# vxdmpadm listctlr all
The next command displays information about all the paths that are connected to a particular HBA controller:
# vxdmpadm getsubpaths ctlr=controller_name
For example to display the paths that are connected to the fscsi2 controller:
# vxdmpadm getsubpaths ctlr=fscsi2