GPFS is not using the underlying multipath device

You can view the underlying disk device where I/O is performed on an NSD disk by using the mmlsdisk command with the -M option.

The mmlsdisk command output might show unexpected results for multipath I/O devices. For example if you issue this command:
mmlsdisk dmfs2 -M
The system displays information similar to:
Disk name     IO performed on node     Device             Availability
------------  -----------------------  -----------------  ------------
m0001         localhost                /dev/sdb           up

The following command is available on Linux only.
# multipath -ll
mpathae (36005076304ffc0e50000000000000001) dm-30 IBM,2107900
[size=10G][features=1 queue_if_no_path][hwhandler=0]
\_ round-robin 0 [prio=8][active]
 \_ 1:0:5:1  sdhr 134:16  [active][ready]
 \_ 1:0:4:1  sdgl 132:16  [active][ready]
 \_ 1:0:1:1  sdff 130:16  [active][ready]
 \_ 1:0:0:1  sddz 128:16  [active][ready]
 \_ 0:0:7:1  sdct 70:16   [active][ready]
 \_ 0:0:6:1  sdbn 68:16   [active][ready]
 \_ 0:0:5:1  sdah 66:16   [active][ready]
 \_ 0:0:4:1  sdb  8:16    [active][ready]

The mmlsdisk output shows that I/O for NSD m0001 is being performed on disk /dev/sdb, but it should show that I/O is being performed on the device-mapper multipath (DMM) /dev/dm-30. Disk /dev/sdb is one of eight paths of the DMM /dev/dm-30 as shown from the multipath command.

This problem could occur for the following reasons:
  • The previously installed user exit /var/mmfs/etc/nsddevices is missing. To correct this, restore user exit /var/mmfs/etc/nsddevices and restart GPFS.
  • The multipath device type does not match the GPFS known device type. For a list of known device types, see /usr/lpp/mmfs/bin/mmdevdiscover. After you have determined the device type for your multipath device, use the mmchconfig command to change the NSD disk to a known device type and then restart GPFS.
The following output shows that device type dm-30 is dmm:
/usr/lpp/mmfs/bin/mmdevdiscover | grep dm-30
dm-30 dmm
To change the NSD device type to a known device type, create a file that contains the NSD name and device type pair (one per line) and issue this command:
mmchconfig updateNsdType=/tmp/filename
where the contents of /tmp/filename are:
m0001 dmm
The system displays information similar to:
mmchconfig: Command successfully completed
mmchconfig: Propagating the cluster configuration data to all
affected nodes. This is an asynchronous process.