Multipath fails to identify volumes on DataCore SANmelody (DM-MPIO)

  • 3279985
  • 15-Jun-2007
  • 30-Apr-2012

Environment

Novell SUSE Linux Enterprise Server 9
Novell Open Enterprise Server (Linux based)

DataCore SANmelody

Situation

A DataCore SANmelody is connected via Fibre Channel to a machine installed with SLES9 Service Pack 3 and latest updates. Installation is done following recommendations from Novell, subfs and hotplug are disabled, multipath.conf is empty and correct options for FC driver in modprobe.conf.local are given.

Despite all this, a
multipath -v3 -d
gives only something like:
360030d90736d73325f616d735f756e69 1:0:0:1 sdc 8:32 [ready]
DataCore/SANmelod
360030d90736d73325f616d735f756e69 1:0:0:2 sdd 8:48 [ready]
DataCore/SANmelod
for all devices on the SAN. These, 360030d90736d73325f616d735f756e69, are not unique identifiers so all subsequent action on these devices will fail.


Resolution

Add the following /etc/multipath.conf

defaults {
}
devices {
device {
vendor "DataCore"
product "SANmelody"
getuid_callout "/sbin/scsi_id -p 0x80 -g -u -s /block/%n"
}
}
}

with the setting to page 0x80 the value returned from the SAN will be correct.

Additional Information

The reason for this behaviour is that the default behaviour of multipath to determine the unique ID from a SAN is:
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
and this does not return the correct value for this SAN.