Good morning,
I’m having problems configuring a SAN MSA2012fc Dual Controller connected to a Proliant DL380 G5 running Suse Linux Enterprise Server with 2 Emulex FC2142SR (A8002A) HBA’s.
The problem I’m experiencing is that the disks on the SAN appear to be multiplied by four, i.e. on the SAN I have configured 2 vdisks and on the machine I am seeing 8:
/opt/hp/hp_fibreutils # ./hp_rescan -a
Adding legacy tape devices to /proc/scsi/device_info
Scanning /sys/class/scsi_host/host0
Scanning /sys/class/scsi_host/host1
scsi0 00 00 00 HP MSA2012fc J200 Enclosure
scsi0 00 01 00 HP MSA2012fc J200 Enclosure
scsi0 00 02 00 HP MSA2012fc J200 Enclosure
scsi0 00 03 00 HP MSA2012fc J200 Enclosure
scsi1 00 00 00 HP MSA2012fc J200 Enclosure
scsi1 00 01 00 HP MSA2012fc J200 Enclosure
scsi1 00 02 00 HP MSA2012fc J200 Enclosure
scsi1 00 03 00 HP MSA2012fc J200 Enclosure
I have tried using SLES 10 SP1 as well as SLES SP2 but the problem occurred on both. On SLES SP1 I used the official HP package HPDMmultipath-4.0.0. On SLES SP2, I followed the official HP instructions installing all the recommended packages and their corresponding versions, but the problem wasn’t solved.
As for the HBA´s drivers I’ve tried both the original HP drivers (package hp-lpfc-2008-05-30) as the latest Emulex drivers but without any luck. The drivers compile, make and install alright and the module seems to be running OK but the disks are detected incorrectly.
When using SLES SP1 I used the switch –sp when installing the drivers to disable multipath … When I tested with SLES SP2 I didn’t use the -sp switch.
/opt/hp/hp_fibreutils # dmesg |grep Emulex
Emulex LightPulse Fibre Channel SCSI driver 8.2.0.22_p1
Copyright(c) 2004-2008 Emulex. All rights reserved.
/opt/hp/hp_fibreutils # grep lpfc /etc/modprobe.conf
options lpfc lpfc_nodev_tmo=28 lpfc_lun_queue_depth=16 lpfc_discovery_threads=32
/opt/hp/hp_fibreutils # modinfo lpfc |more
filename: /lib/modules/2.6.16.54-0.2.8-bigsmp/kernel/drivers/scsi/lpfc/lpfc.ko
version: 0:8.2.0.22_p1
author: Emulex Corporation - tech.support@emulex.com
description: Emulex LightPulse Fibre Channel SCSI driver 8.2.0.22_p1
license: GPL
srcversion: 6D165CDA957263297189E3F
dmesg shows the following on startup, which as far as I know is normal:
lpfc: module not supported by Novell, setting U taint flag.
lpfc 0000:0b:00.0: 0:1303 Link Up Event x1 received Data: x1 xf7 x10 x9
lpfc 0000:0e:00.0: 1:1303 Link Up Event x1 received Data: x1 xf7 x10 x9
lpfc 0000:0b:00.0: 0:1305 Link Down Event x2 received Data: x2 x20 x80110
lpfc 0000:0b:00.0: 0:1306 Link Up Event in loop back mode x3 received Data: x3 x1 x10 x1
lpfc 0000:0b:00.0: 0:1308 Link Down Event in loop back mode x4 received Data: x4 x20 x80000
lpfc 0000:0b:00.0: 0:1303 Link Up Event x5 received Data: x5 x1 x10 x1
lpfc 0000:0b:00.0: 0:1305 Link Down Event x6 received Data: x6 x20 x80110
lpfc 0000:0b:00.0: 0:1306 Link Up Event in loop back mode x7 received Data: x7 x1 x10 x1
lpfc 0000:0b:00.0: 0:1308 Link Down Event in loop back mode x8 received Data: x8 x20 x80000
lpfc 0000:0b:00.0: 0:1303 Link Up Event x9 received Data: x9 x1 x10 x1
I’ve upgraded the firmware version of the HBAs, from their original 2.50 A6 version to 2.72 A2 using the utility HBAnyware, but without any positive result:
/opt/hp/hp_fibreutils # cat /sys/class/scsi_host/host0/info
HP FC2142SR 4Gb PCI-e, SC, Fibre Channel Adapter on PCI bus 0b device 00 irq 169
/opt/hp/hp_fibreutils # cat /sys/class/scsi_host/host0/fwrev
2.72A2 (W3F2.72A2), sli-3
UDEV detects the devices as generic SCSI devices sg[0-7] , but doesn’t seem to recognize them as valid block devices:
Vendor: HP Model: MSA2012fc Rev: J200
Type: Enclosure ANSI SCSI revision: 05
Vendor: HP Model: MSA2012fc Rev: J200
Type: Enclosure ANSI SCSI revision: 05
0:0:0:0: Attached scsi generic sg0 type 13
0:0:1:0: Attached scsi generic sg1 type 13
Vendor: HP Model: MSA2012fc Rev: J200
Type: Enclosure ANSI SCSI revision: 05
0:0:2:0: Attached scsi generic sg2 type 13
Vendor: HP Model: MSA2012fc Rev: J200
Type: Enclosure ANSI SCSI revision: 05
0:0:3:0: Attached scsi generic sg3 type 13
….
….
….
As a result fdisk doesn’t recognize them either:
/opt/hp/hp_fibreutils # fdisk -l
Disk /dev/cciss/c0d0: 73.3 GB, 73372631040 bytes
255 heads, 63 sectors/track, 8920 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/cciss/c0d0p1 * 1 64 514048+ 83 Linux
/dev/cciss/c0d0p2 65 6827 54323797+ 83 Linux
/dev/cciss/c0d0p3 6828 8920 16812022+ 82 Linux swap / Solaris
The commands multipath –ll , multipath –l , multipath –v, multipath –d produce no output whatsoever.
Finally I’m attaching my current configuration /etc/multipath.conf
/opt/hp/hp_fibreutils # cat /etc/multipath.conf
defaults {
udev_dir /dev
polling_interval 10
selector "round-robin 0"
path_grouping_policy failover
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
prio_callout "/bin/true"
path_checker tur
rr_min_io 100
rr_weight uniform
failback immediate
no_path_retry 12
user_friendly_names yes
}
#blacklist {
wwid 26353900f02796769
devnode “^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*”
devnode “^hd[a-z][0-9]*]”
devnode “^cciss!c[0-9]d[0-9]*”
device {
vendor “HP”
product “OPEN-*”
}
multipaths {
multipath {
wwid 2039485769900000000
alias red
path_grouping_policy group_by_prio
path_selector "round-robin 0"
failback immediate
rr_weight uniform
no_path_retry 10
rr_min_io 100
}
}
devices {
device
{
vendor “HP”
product “MSA2[02]*”
path_grouping_policy multibus
getuid_callout “/sbin/scsi_id -g -u -s /block/%n”
path_selector “round-robin 0”
rr_weight uniform
prio_callout “/bin/true”
path_checker tur
hardware_handler “0”
failback immediate
no_path_retry 12
rr_min_io 100
}
}
Any help to resolve my problem would be much appreciated. If additional information is required to aid me with my query feel free to ask me and I will provide it as soon as possible.
Thanks in advance for your replies.