Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#325 closed defect (fixed)

Missing disk behind Intel Storage RAID

Reported by: erwinmeyer Owned by: Christian Franke
Priority: major Milestone: Release 6.3
Component: all Version: 6.2
Keywords: windows Cc:

Description

Hi all,

I have two systems, configured almost identically. Both have
a 4 disk Intel RAID and a SSD for Windows.
On the one machine I get the expected output:

C:\>smartctl --scan
/dev/sda -d scsi # /dev/sda, SCSI device
/dev/sdb -d scsi # /dev/sdb, SCSI device
/dev/csmi0,0 -d ata # /dev/csmi0,0, ATA device
/dev/csmi0,1 -d ata # /dev/csmi0,1, ATA device
/dev/csmi0,2 -d ata # /dev/csmi0,2, ATA device
/dev/csmi0,3 -d ata # /dev/csmi0,3, ATA device
/dev/csmi0,4 -d ata # /dev/csmi0,4, ATA device

SATA port 0 is the SSD and ports 1 through 4 are the raid members.
On the other machine, the raid disks are connected to SATA ports
2 through 5 (which is confirmed by the Intel utility).
On this system I get the following:

C:\>smartctl --scan
/dev/sda -d scsi # /dev/sda, SCSI device
/dev/sdb -d scsi # /dev/sdb, SCSI device
/dev/csmi0,0 -d ata # /dev/csmi0,0, ATA device
/dev/csmi0,2 -d ata # /dev/csmi0,2, ATA device
/dev/csmi0,3 -d ata # /dev/csmi0,3, ATA device
/dev/csmi0,4 -d ata # /dev/csmi0,4, ATA device

Obviously one disk is missing, and I get the following, trying
to access it directly:

C:\>smartctl -a /dev/csmi0,5
smartctl 6.2 2013-07-26 r3841 [x86_64-w64-mingw32-win7-sp1] (sf-6.2-1)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

Smartctl open device: /dev/csmi0,5 failed: Port 5 does not exist (#ports: 5)

My first guess would be that the empty port messes with the count
of total ports. Any help would be appreciated, and any info I can
provide to help, just ask.

Thanks!

Attachments (2)

ioctl_output.txt (1.5 KB ) - added by erwinmeyer 11 years ago.
ioctl_output_hotplug.txt (1.7 KB ) - added by erwinmeyer 11 years ago.

Download all attachments as: .zip

Change History (7)

in reply to:  description comment:1 by Christian Franke, 11 years ago

Keywords: windows added
Milestone: Release 6.3
Owner: changed from somebody to Christian Franke
Status: newaccepted

My first guess would be that the empty port messes with the count of total ports.

This is very likely. Please provide output of

  smartctl -r ioctl,2 -d csmi --scan

as an attachment.

by erwinmeyer, 11 years ago

Attachment: ioctl_output.txt added

comment:2 by Christian Franke, 11 years ago

According to CSMI drafts (T11.5 04-468v0 from July 2004, T10/04-284r0 from September 2004) the value of CSMI_SAS_PHY_INFO.NumberOfPhys "Contains the number of phys (real or virtual) supported by this controller".

Intel possibly changed the meaning this value:

Intel drivers 10.8.* and older set NumberOfPhys to the number of valid entries in the array CSMI_SAS_PHY_INFO.Phy[32]. An empty port appears in the array if and only if hot plugging is enabled for this port. The BIOS may or may not have a related setting for each port.

This 12.8.* driver apparently sets NumberOfPhys to the number of ports actually used. The array may have more valid entries if empty ports exist.

I will change the CSMI code in os_win32.cpp accordingly.

Please try the following workaround: If available, change the hotplug setting for the empty port in BIOS.

comment:3 by erwinmeyer, 11 years ago

Hey, sorry this took a while, the machine in question was in use last week.
Enabling hotplugging on port 1 indeed makes port 5 visible to smartctl.

See attached log.

by erwinmeyer, 11 years ago

Attachment: ioctl_output_hotplug.txt added

comment:4 by Christian Franke, 11 years ago

Resolution: fixed
Status: acceptedclosed

comment:5 by Christian Franke, 11 years ago

Please test r3888, also with hotplugging disabled. A compiled binary is available here.

Note: See TracTickets for help on using tickets.