Opened 13 years ago

Closed 12 years ago

#177 closed enhancement (wontfix)

Workaround for broken I/O-control of silicon-image 3114 windows driver

Reported by: frankhartung Owned by: Christian Franke
Priority: minor Milestone:
Component: all Version: 5.40
Keywords: silicon-image windows Cc:

Description

hi,

I am using smartctl 5.41 2011-06-09 r3365 [i686-w64-mingw32-xp-sp3] (sf-win32-5.41-1)
on windows xp and having an pci sata-card with 3114 silicon image-chip.

I ve noticed that the result of --scan giving me the devices that I can request and the last one are the 3114-pci-card - the result of smartctl --scan:
/dev/sda -d ata # /dev/sda, ATA device
/dev/sdb -d ata # /dev/sdb, ATA device
/dev/sdc -d ata # /dev/sdc, ATA device
/dev/sdd -d ata # /dev/sdd, ATA device
/dev/sde -d ata # /dev/sde, ATA device

Problem is that smartctl is showing for both sata-drives(with smartctrl /dev/sdd -d ata and smartctrl /dev/sde -d ata ) that are connected to the 3114-card the same model and serial - that is an mistake. its showing for both the same serial of JK1171YAHVU93S which is an sign that the informations are not really from the 2nd one!

I ve verified this with crystal disk info 4.01 and that prg. find out the correct model and two different serials ..so I think here is someting going wrong (bug?!) in smartctl.

the drives that are connected to the 3114-pci-card are:
Model Family: Hitachi Deskstar 7K2000
Device Model: Hitachi HDS722020ALA330
Serial Number: JK1171YAHVU93S

and the 2nd one with ..
Serial Number: JK1170YAHPSBAP

(I ve tried the same with the version smartctl 5.41 2011-04-19 r3317 [i686-w64-mingw32-xp-sp3] (cf-win32-20110419) and the result is the same!)

Attachments (2)

output_sdd.txt (27.1 KB ) - added by frankhartung 13 years ago.
output-file from smartctl -r ioctl,2 -d ata -a /dev/sdd >output_sdd.txt
output_sde.txt (27.1 KB ) - added by frankhartung 13 years ago.
output-file from smartctl -r ioctl,2 -d ata -a /dev/sde >output_sde.txt

Download all attachments as: .zip

Change History (17)

comment:1 by Christian Franke, 13 years ago

Component: smartctlall
Keywords: silicon-image windows added
Owner: changed from somebody to Christian Franke
Priority: majorminor
Status: newaccepted

CrystalDiskInfo uses a silicon image specific "CMD_IDE" IOCTL_SCSI_MINIPORT to access identify data. This suggests that IOCTL_ATA_PASSTHROUGH or SMART_RCV_DRIVE_DATA are not properly implemented in the silicon image driver.

For further diagnostics please attach(!) outputs of "smartctl -r ioctl,2 -d ata -a /dev/sdX" for both devices.

by frankhartung, 13 years ago

Attachment: output_sdd.txt added

output-file from smartctl -r ioctl,2 -d ata -a /dev/sdd >output_sdd.txt

by frankhartung, 13 years ago

Attachment: output_sde.txt added

output-file from smartctl -r ioctl,2 -d ata -a /dev/sde >output_sde.txt

comment:2 by frankhartung, 13 years ago

I ve attached both outputs - if you need more pls request it.

comment:3 by Christian Franke, 13 years ago

Milestone: Release 5.41.1
Owner: changed from Christian Franke to somebody
Status: acceptedassigned
Summary: wrong device detection (pci-card 3114 silicon image-chip 4channel sata)Workaround for broken I/O-control of silicon-image 3114 windows driver
Type: defectenhancement

Thanks. Result is as expected: SMART_RCV_DRIVE_DATA returns same IDENTIFY and SMART data for
.\!PhysicalDrive3 and
.\!PhysicalDrive4. This is IMO a bug in the driver.

Somebody with access to such hardware may add the silicon image specific I/O-control or another workaround.

comment:4 by frankhartung, 13 years ago

question: how can I help to solve this ?

comment:5 by frankhartung, 13 years ago

I can offer you to sent you an silicon image 3114-pcicard - just submit adress to me!

comment:6 by Christian Franke, 13 years ago

Milestone: Release 5.42

Thank you! Address sent to your sourceforge user mailaddress.

comment:7 by Christian Franke, 13 years ago

Owner: changed from somebody to Christian Franke
Status: assignedaccepted

comment:8 by Christian Franke, 13 years ago

Milestone: Release 5.42Release 5.43

comment:9 by tdowg1, 12 years ago

As a backup, I can also offer to send you my silicon image 3114-pcicard.

Alternatively, I could run some tests, if that's needed?

comment:10 by Christian Franke, 12 years ago

Thanks, I already received a 3114 pcicard, see above. The problem is the limit of spare time (and sometimes a lack of free PCI slots in available hardware :-)

comment:11 by Christian Franke, 12 years ago

Milestone: Release 5.43Release 5.44

comment:12 by costinel, 12 years ago

Hi,
"metoo"!
:)

comment:13 by Christian Franke, 12 years ago

Milestone: Release 5.44

Results of some experiments with two non-RAID drives behind SiI3114 on Win7 x64 with driver 1.5.20.3:

SMART_RCV_DRIVE_DATA: Always returns info for the 2nd drive only. This is a driver bug!

IOCTL_SCSI_MINIPORT_*: Same.

IOCTL_STORAGE_QUERY_PROPERTY: Returns identity info for correct drives, firmware revision is truncated. Serial number not included (this is by design).

IOCTL_STORAGE_PREDICT_FAILURE: Fails with ERROR_GEN_FAILURE.

Same results if \Device\Scsi\Si3114r51PortXPathYTargetZLun0 is used instead of \\.\PhysicalDriveN.

WMI MSStorageDriver_FailurePredictData: Not implemented.

WMI Win32_DiskDrive: Returns correct serial number for both drives, firmware revision is truncated:

  C:\Windows\system32> wmic
  ...
  wmic:root\cli>path Win32_DiskDrive get DeviceId,FirmwareRevision,Model,SerialNumber
  DeviceID            FirmwareRevision  Model                                  SerialNumber
  \\.\PHYSICALDRIVE0  ...               ...                                    ...
  \\.\PHYSICALDRIVE1  6PC1              INTEL SS DSA2BZ200G3 SCSI Disk Device  CVLV1..........
  \\.\PHYSICALDRIVE2  4PC1              INTEL SS DSA2CW160G3 SCSI Disk Device  CVPR1..........

(This is used by CrystalDiskInfo in this case but not yet used by smartctl)

comment:14 by Christian Franke, 12 years ago

Usage of IOCTL_STORAGE_* could be enforced by adding ":f" to the smartctl pseudo-device name. Please provide test results for "smartctl -r ioctl,2 -d ata -a /dev/sdX:f".

If this does not return any SMART data this bug cannot be fixed.

comment:15 by Christian Franke, 12 years ago

Resolution: wontfix
Status: acceptedclosed

There is no known way to read SMART data from more than one drive via the current SiI3114 Windows driver.

Starting with smartctl r3601, it should be possible to read the correct serial number for more than one drive, see above comment. This does not help for SMART data, therefore this ticket is set to wontfix.

Sorry for the delay and this negative result. Thanks to reporter for providing a 3114 pci card for testing.

Note: See TracTickets for help on using tickets.