I've been trying to get either smartctl or sg3_utils to report properly.
They both have the same low-level problems which leads me to suspect
either I'm doing something wrong OR there is a problem in the
marvell88sx / sd / SATA etc framework.
I can access drive name/serial number of all drives on the SAT2 card
and the temperature is returned from the IE log page on my two drives
that support temperature.
(The SATA disks on the motherboard that are attached to the cmdk
driver work, but SMART fails because they are treated as ATA drives so
ignore those)
What appears broken is I cannot access any of the logs such as the
typical counters that I *know* exist.
If we look at sg3_utils output (prettier than smartctl)
src/sg_logs /dev/rdsk/c1t0d0s0
ATA WDC WD15EADS-00R 0A01
Supported log pages:
0x00 Supported log pages
0x00 Supported log pages
0x03 Error counters (read)
0x04 Error counters (read reverse)
0x00 Supported log pages
0x10 Self-test results
0x2f Informational exceptions (SMART)
0x30 Performance counters (Hitachi)
First strange matter is that I would EXPECT to see a list in numerical
order with 0x00 appearing only once!
Well no matter I thought, but then a query on page 3 say tells me I
have an illegal field in the CBD.
sg_logs -p 3 /dev/rdsk/c1t0d0s0
ATA WDC WD15EADS-00R 0A01
log_sense: field in cdb illegal
(smartctl said the same thing).
Turns out only the last 4 pages (00, 10, 2f, 30) actually work. The
first 4 data values almost seem as if the returned data (12 bytes
total: 4 header, 8 data) should actually be 8 header for some reason
(although this is not correct for a LOG sense parameter block).
The log sense command is run to find the expected data length and it
returns "12".
Delving further I found (but I'm now out of my depth) that there was a
total of 3072 bytes apparently coming back from the log sense command
(according to both sg3 and smartctl) !!!???
sg3 shows it neatly.
sg_logs -v /dev/rdsk/c1t0d0s0
inquiry cdb: 12 00 00 00 24 00
ATA WDC WD15EADS-00R 0A01
log sense cdb: 4d 00 40 00 00 00 00 00 04 00
log sense: requested 4 bytes but got -3068 bytes
log sense cdb: 4d 00 40 00 00 00 00 00 0c 00
log sense: requested 12 bytes but got -3060 bytes
Supported log pages:
0x00 Supported log pages
0x00 Supported log pages
0x03 Error counters (read)
0x04 Error counters (read reverse)
0x00 Supported log pages
0x10 Self-test results
0x2f Informational exceptions (SMART)
0x30 Performance counters (Hitachi)
Not sure about the -sign - maybe a wrap ? esp given 3068 + 4 == 3060 +
12 == 3072
I hacked smartctl src to give me its count:
logSense:
pagelen =12 (# bytes driver stated would be returned)
Resid = 3072 (#bytes actually returned)
Sooo I'm stuck and I still can't access my drive stats! :-(
Any help would be very gratefully received.
cheers
Kim
==========
System Details
uname -a -> SunOS bigbertha 5.11 NexentaOS_20081207 i86pc i386 i86pc
Solaris
motherboard: Intel Server SE7320SP2
SATA card: Supermicro AOC-SAT2-MV8 PCI-X
prtpicl extract
...
pci8086,25ae (pci, d800000132)
pci11ab,11ab (obp-device, d800000155)
disk (block, d80000017f)
disk (block, d8000001a2)
disk (block, d8000001c5)
disk (block, d8000001e8)
disk (block, d80000020b)
...
pci-ide (pci-ide, d800000405)
ide (obp-device, d80000042c)
ide (obp-device, d800000435)
pci-ide (pci-ide, d80000043e)
ide (ide, d800000466)
cmdk (block, d800000477)
ide (ide, d80000048e)
sd (cdrom, d8000004a5)
/etc/path_to_inst
"/p...@0,0/pci8086,2...@1c/pci11ab,1...@3" 0 "marvell88sx"
"/p...@0,0/pci8086,2...@1c/pci11ab,1...@3/d...@0,0" 3 "sd"
"/p...@0,0/pci8086,2...@1c/pci11ab,1...@3/d...@2,0" 4 "sd"
"/p...@0,0/pci8086,2...@1c/pci11ab,1...@3/d...@3,0" 5 "sd"
"/p...@0,0/pci8086,2...@1c/pci11ab,1...@3/d...@4,0" 6 "sd"
"/p...@0,0/pci8086,2...@1c/pci11ab,1...@3/d...@1,0" 9 "sd"
"/p...@0,0/pci-...@1f,1" 0 "pci-ide"
"/p...@0,0/pci-...@1f,1/i...@0" 0 "ata"
"/p...@0,0/pci-...@1f,1/i...@0/s...@0,0" 1 "sd"
"/p...@0,0/pci-...@1f,1/i...@1" 1 "ata"
"/p...@0,0/pci-...@1f,2" 1 "pci-ide"
"/p...@0,0/pci-...@1f,2/i...@0" 2 "ata"
"/p...@0,0/pci-...@1f,2/i...@0/c...@0,0" 0 "cmdk"
"/p...@0,0/pci-...@1f,2/i...@0/s...@0,0" 7 "sd"
"/p...@0,0/pci-...@1f,2/i...@1" 3 "ata"
"/p...@0,0/pci-...@1f,2/i...@1/s...@0,0" 0 "sd"
"/p...@0,0/pci-...@1f,2/i...@1/s...@1,0" 8 "sd"
"/p...@0,0/pci-...@1f,2/i...@1/c...@0,0" 1 "cmdk"
and for what it's worth
85 -rwxr-xr-x 1 root sys 85592 Dec 8 2008 /kernel/drv/amd64/
marvell88sx
58 -rwxr-xr-x 1 root sys 58224 Dec 8 2008 /kernel/drv/marvell88sx
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss