Opened 15 years ago
Closed 15 years ago
#43 closed defect (fixed)
3ware Support broken since 3ware 9.5.x Release on Windows
Reported by: | sonicblue | Owned by: | Christian Franke |
---|---|---|---|
Priority: | major | Milestone: | Release 5.39.1 |
Component: | smartctl | Version: | 5.39 |
Keywords: | 3ware Windows | Cc: |
Description
I have been using smartmontools / smartctl.exe since the initial 3ware Driver Release for my 9650SE-8LPML controller. For all 9.4.x Codeset releases this worked fine to fetch S.M.A.R.T. data from the disks attached to the RAID controller and also to perform self-tests.
Now, since the 9.5.x Codesets from 3ware, something seems to have changed there. smartctl.exe now does not seem to be able to fetch data correctly anymore. I have been using the device /dev/tw_cli/c0/px to access the drives, since i do not seem to have /dev/twa0, /dev/twe0 or the "-d 3ware" option on Windows.
Currently I am using Windows XP Professional x64 Edition, but the problem is reproducable in a normal 32-Bit WinXP Pro too.
For instance, when I do a simple "smartctl.exe -i /dev/tw_cli/c0/p0", what I get is this:
smartctl 5.39 2009-12-09 r2995 [i686-pc-mingw32-2003(64)-sp2] (sf-win32-5.39-1)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
START OF INFORMATION SECTION
Device Model: Hitachi HUA722020ALA330
Serial Number: JK1131YAGBG0WV
Firmware Version: JKAOA20N
User Capacity: 2.000.398.934.016 bytes
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 3
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Tue Jan 26 10:28:34 2010 WEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
Error SMART Values Read failed: Function not implemented
Smartctl: SMART Read Values failed.
Error SMART Thresholds Read failed: Function not implemented
Smartctl: SMART Read Thresholds failed.
Or, "smartctl.exe -H /dev/tw_cli/c0/p0" gives:
smartctl 5.39 2009-12-09 r2995 [i686-pc-mingw32-2003(64)-sp2] (sf-win32-5.39-1)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
Error SMART Values Read failed: Function not implemented
Smartctl: SMART Read Values failed.
Error SMART Thresholds Read failed: Function not implemented
Smartctl: SMART Read Thresholds failed.
START OF READ SMART DATA SECTION
SMART overall-health self-assessment test result: PASSED
It seems the way tw_cli reports data has changed or something, I do not know. Also I do not know if it is ok NOT to have "/dev/twex" under Windows, but it is definitely not there. So, "/dev/tw_cli/cx/px" was the only thing that worked for me, but now it seems to be broken.
Since 3ware will probably not care about SmartMonTools not being able to read their S.M.A.R.T. data, maybe the SmartMonTools Devs can do something for 5.39.1 or 5.40 there (probably 5.39.1 rather than 5.40, since this is more like a small fix?).
Change History (6)
follow-up: 2 comment:1 by , 15 years ago
follow-up: 3 comment:2 by , 15 years ago
Replying to chrfranke:
To access the native SMART support in the 3ware driver, use device name "/dev/sdX,N" and no "-d" option. The device name "/dev/twex" did never work on Windows. When the name "/dev/tw_cli/cx/px" is used, smartctl runs the tw_cli utility and parses its output. This was intended is a fallback solution if the native Windows driver support does not work. See "WINDOWS NT4/2000/XP/2003/Vista" section on smartctl man page.
Please provide a sample output of new "tw_cli /cx/px show all".
Did you ever test "/dev/sdX,N" ?
Yes, I have tried "/dev/sdX,N", but the behaviour is quite strange. Without any "-d" option it does not seem to even detect the device:
smartctl -i /dev/sdb,2
smartctl 5.39 2009-12-09 r2995 [i686-pc-mingw32-2003(64)-sp2] (sf-win32-5.39-1)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
/dev/sdb: Unable to detect device type
Smartctl: please specify device type with the -d option.
Use smartctl -h to get a usage summary
Ok, so I do this:
smartctl -i /dev/sdb,2 -d scsi
smartctl 5.39 2009-12-09 r2995 [i686-pc-mingw32-2003(64)-sp2] (sf-win32-5.39-1)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
Device: AMCC 9650SE-8LPML Version: 4.10
Serial number: YAGBG0WV5AD92D007945
Device type: disk
scsiModePageOffset: response length too short, resp_len=4 offset=4 bd_len=0
Local Time is: Tue Jan 26 22:05:18 2010 WEST
Device supports SMART and is Disabled
Temperature Warning Disabled or Not Supported
Obviously this is still wrong. No matter which drive/port I chose, it always shows the serial number of the drive attached to the first port on the controller (there are 8 drives attached in total).
So, "smartctl.exe -h" tells me to use "/dev/hdb,N" instead for 3ware 9000 series controllers, but no:
smartctl -i /dev/hdb,2
smartctl 5.39 2009-12-09 r2995 [i686-pc-mingw32-2003(64)-sp2] (sf-win32-5.39-1)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
.\PhysicalDrive1: ATA driver has no SMART support
To continue, add one or more '-T permissive' options.
Smartctl open device: /dev/hdb,2 failed: Function not implemented
"/dev/hdb" seems to be the 3ware controller though, just like "/dev/sdb", see:
smartctl -i /dev/hdb -d ata
smartctl 5.39 2009-12-09 r2995 [i686-pc-mingw32-2003(64)-sp2] (sf-win32-5.39-1)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
START OF INFORMATION SECTION
Device Model: 9650SE-8LPML
Serial Number: [No Information Found]
Firmware Version: 4.10
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 3
ATA Standard is: Exact ATA specification draft version not indicated
Local Time is: Tue Jan 26 22:11:47 2010 WEST
SMART support is: Available - device has SMART capability.
Enabled status cached by OS, trying SMART RETURN STATUS cmd.
SMART support is: Enabled
So now I'm a bit lost. Well, here is the tw_cli output, running "tw_cli /c0/p0 show all":
/c0/p0 Status = OK
/c0/p0 Model = Hitachi HUA722020ALA330
/c0/p0 Firmware Version = JKAOA20N
/c0/p0 Serial = JK1131YAGBG0WV
/c0/p0 Capacity = 1.82 TB (3907029168 Blocks)
/c0/p0 Reallocated Sectors = 0
/c0/p0 Power On Hours = 82
/c0/p0 Temperature = 36 deg C
/c0/p0 Spindle Speed = 7200 RPM
/c0/p0 Link Speed Supported = 1.5 Gbps and 3.0 Gbps
/c0/p0 Link Speed = 3.0 Gbps
/c0/p0 NCQ Supported = Yes
/c0/p0 NCQ Enabled = Yes
/c0/p0 Identify Status = N/A
/c0/p0 Belongs to Unit = u0
/c0/p0 Drive SMART Data:
10 00 01 0B 00 64 64 00 00 00 00 00 00 00 02 05
00 84 84 67 00 00 00 00 00 00 03 07 00 64 64 00
00 00 00 04 00 00 04 12 00 64 64 04 00 00 00 00
00 00 05 33 00 64 64 00 00 00 00 00 00 00 07 0B
00 64 64 00 00 00 00 00 00 00 08 05 00 70 70 27
00 00 00 00 00 00 09 12 00 64 64 52 00 00 00 00
00 00 0A 13 00 64 64 00 00 00 00 00 00 00 0C 32
00 64 64 04 00 00 00 00 00 00 C0 32 00 64 64 04
00 00 00 00 00 00 C1 12 00 64 64 04 00 00 00 00
00 00 C2 02 00 A6 A6 24 00 18 00 26 00 00 C4 32
00 64 64 00 00 00 00 00 00 00 C5 22 00 64 64 00
00 00 00 00 00 00 C6 08 00 64 64 00 00 00 00 00
00 00 C7 0A 00 C8 C8 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 84 00 19 5A 01 5B
03 00 01 00 01 FF 00 80 01 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 D1
Hope this helps!
follow-up: 4 comment:3 by , 15 years ago
Owner: | changed from | to
---|---|
Status: | new → accepted |
Replying to sonicblue:
smartctl -i /dev/hdb,2
smartctl 5.39 2009-12-09 r2995 [i686-pc-mingw32-2003(64)-sp2] (sf-win32-5.39-1)
Copyright (C) 2002-9 by Bruce Allen, http://smartmontools.sourceforge.net
.\PhysicalDrive1: ATA driver has no SMART support
When SMART ioctl support was added to the 3ware Windows driver in 2006, this feature was only implemented in the 32-bit version of the driver. This is probably still the case.
...
So now I'm a bit lost. Well, here is the tw_cli output, running "tw_cli /c0/p0 show all":
...
/c0/p0 Drive SMART Data:
...
This string has changed. Will be fixed soon. Thanks for the info.
follow-up: 5 comment:4 by , 15 years ago
Replying to chrfranke:
When SMART ioctl support was added to the 3ware Windows driver in 2006, this feature was only implemented in the 32-bit version of the driver. This is probably still the case.
Ah, I see! Ok.
/c0/p0 Drive SMART Data:
This string has changed. Will be fixed soon. Thanks for the info.
Ok, thank you very much! Could you probably provide the string, that smartctl is expecting in that spot? That way I could filter tw_cli output through a simple PERL script and pipe it to the "/dev/tw_cli/stdin" device as a workaround. Thanks a lot!
comment:5 by , 15 years ago
Replying to sonicblue:
Me again.. Well, I dared to download and look at the sourcecode of SmartMonTools and found the solution in "os_win32.cpp".
So, smartctl tries to look for the string "Drive Smart Data:" as the header of the Smart Hex Dump. All I have to do is a simple Search & Replace Regex on the tw_cli output to replace "/c0/p0 Drive SMART Data:" with "Drive Smart Data:" and it works! And I always thought I could never read "real" sourcecode. ;) So I can work around the problem for now.
Thanks. :)
To access the native SMART support in the 3ware driver, use device name "/dev/sdX,N" and no "-d" option. The device name "/dev/twex" did never work on Windows. When the name "/dev/tw_cli/cx/px" is used, smartctl runs the tw_cli utility and parses its output. This was intended is a fallback solution if the native Windows driver support does not work. See "WINDOWS NT4/2000/XP/2003/Vista" section on smartctl man page.
Please provide a sample output of new "tw_cli /cx/px show all".
Did you ever test "/dev/sdX,N" ?