[CentOS] SCSI/SAS error message by mpt2sas.ko

Fri Oct 8 11:48:41 UTC 2010
Alexander Dalloz <ad+lists at uni-x.org>

Dear all,

actually I installed CentOS 5.4 x86_64 on 11 new Dell R710 servers. It is
required to use 5.4 to be covered by the NetApp Interoperability Matrix
for use of Snapdrive.

All systems spit out the error message

mpt2sas0: failure at
drivers/scsi/mpt2sas/mpt2sas_scsih.c:4637/_scsih_add_device()!

at boot time. In dmesg the complete SCSI initialization logging appears as
follows:

SCSI subsystem initialized
mpt2sas version 01.101.00.00 loaded
scsi0 : Fusion MPT SAS Host
GSI 22 sharing vector 0x5A and IRQ 22
ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 33 (level, low) -> IRQ 90
PCI: Setting latency timer of device 0000:03:00.0 to 64
mpt2sas0: 64 BIT PCI BUS DMA ADDRESSING SUPPORTED, total mem (24544400 kB)
mpt2sas0: PCI-MSI-X enabled: IRQ 98
mpt2sas0: iomem(0xdf2b0000), mapped(0xffffc20000040000), size(65536)
mpt2sas0: ioport(0xfc00), size(256)
mpt2sas0: sending diag reset !!
[...]
mpt2sas0: diag reset: SUCCESS
mpt2sas0: Allocated physical memory: size(1125 kB)
mpt2sas0: Current Controller Queue Depth(490), Max Controller Queue
Depth(3439)
mpt2sas0: Scatter Gather Elements per IO(128)
mpt2sas0: LSISAS2008: FWVersion(02.15.63.00), ChipRevision(0x02),
BiosVersion(07.01.09.00)
mpt2sas0: Protocol=(Initiator,Target<6>mpt2sas0: Dell PERC H200
Integrated: Vendor(0x1000), Device(0x0072), SSVID(0x1028), SSDID(0x1F1E)
), Capabilities=(Raid,TLR,EEDP,Snapshot Buffer,Diag Trace Buffer,Task Set
Full,NCQ)
mpt2sas0: sending port enable !!
mpt2sas0: host_add: handle(0x0001), sas_addr(0x5842b2b0194dce00), phys(8)
mpt2sas0: failure at
drivers/scsi/mpt2sas/mpt2sas_scsih.c:4637/_scsih_add_device()!
mpt2sas0: port enable: SUCCESS
  Vendor: Dell      Model: Virtual Disk      Rev: 1028
  Type:   Direct-Access                      ANSI SCSI revision: 06
scsi 0:1:0:0: RAID1: handle(0x004f), wwid(0x04adb846d46d5f0a),
pd_count(2), type(SSP)
scsi 0:1:0:0: qdepth(128), tagged(1), simple(1), ordered(0),
scsi_level(7), cmd_que(1)
SCSI device sda: 285474816 512-byte hdwr sectors (146163 MB)
sda: Write Protect is off
sda: Mode Sense: 03 00 00 08
SCSI device sda: drive cache: write through
SCSI device sda: 285474816 512-byte hdwr sectors (146163 MB)
sda: Write Protect is off
sda: Mode Sense: 03 00 00 08
SCSI device sda: drive cache: write through
 sda: sda1 sda2 sda3
sd 0:1:0:0: Attached scsi disk sda
  Vendor: FUJITSU   Model: MBA3147RC         Rev: D306
  Type:   Direct-Access                      ANSI SCSI revision: 05
scsi 0:0:0:0: SSP: handle(0x000a), sas_addr(0x500000e1150ca882),
device_name(0x0000000000000000)
scsi 0:0:0:0: SSP: enclosure_logical_id(0x5842b2b0194dce00), slot(1)
scsi 0:0:0:0: qdepth(254), tagged(1), simple(1), ordered(0),
scsi_level(6), cmd_que(1)
  Vendor: FUJITSU   Model: MBA3147RC         Rev: D306
  Type:   Direct-Access                      ANSI SCSI revision: 05
scsi 0:0:1:0: SSP: handle(0x000b), sas_addr(0x500000e1150ca9c2),
device_name(0x0000000000000000)
scsi 0:0:1:0: SSP: enclosure_logical_id(0x5842b2b0194dce00), slot(0)
scsi 0:0:1:0: qdepth(254), tagged(1), simple(1), ordered(0),
scsi_level(6), cmd_que(1)

In the source code of the mpt2sas.ko module

http://www.takatan.net/lxr/source/drivers/scsi/mpt2sas/mpt2sas_scsih.c?v=2.6.18-164.el5;a=x86_64

the code part responsible for the error messages is

4633         /* check if this is end device */
4634         device_info = le32_to_cpu(sas_device_pg0.DeviceInfo);
4635         if (!(_scsih_is_end_device(device_info))) {
4636                 printk(MPT2SAS_ERR_FMT "failure at %s:%d/%s()!\n",
4637                     ioc->name, __FILE__, __LINE__, __func__);
4638                 return 0;
4639         }

I am not sure what that should tell me. I can not detect any misfunction
once the systems are up and running, nor any further error loggings.

Any clue about the severity of that mpt2sas check and failure note?

Best regards

Alexander