[Bug 191717] [iscsi] smartctl -H gives "ATA output registers missing" for a disk using the isci driver
Martin Simmons
martin at lispworks.com
Tue Jul 8 11:56:25 UTC 2014
>>>>> On Mon, 07 Jul 2014 23:12:27 -0400, Douglas Gilbert said:
>
> On 14-07-07 09:45 PM, bugzilla-noreply at freebsd.org wrote:
> > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717
> >
> > Mark Linimon <linimon at FreeBSD.org> changed:
> >
> > What |Removed |Added
> > ----------------------------------------------------------------------------
> > Assignee|freebsd-bugs at FreeBSD.org |freebsd-scsi at FreeBSD.org
> > Summary|smartctl -H gives "ATA |[iscsi] smartctl -H gives
> > |output registers missing" |"ATA output registers
> > |for a disk using the isci |missing" for a disk using
> > |driver |the isci driver
> >
> > --- Comment #1 from Mark Linimon <linimon at FreeBSD.org> ---
> > Over to maintainers.
> >
>
> At the point of failure "whatever" produces this SCSI sense data:
> f0 00 01 00 50 40 00 00 00 c2 4f 00 00 1d 00 00 00 00
>
> FreeBSD is wrong to print out 18 bytes because that is an 8
> byte (deferred, fixed type) buffer because byte 7 (the
> additional length) is 0. Whatever produced that broken
> sense data is the probably culprit.
>
> It is trying to say there is "ATA pass-through information
> available" but fails to get its message across.
Hi,
I'm the original reporter.
The sense data is smartctl's interpretation of the ccb union.
In particular, the bytes are from ccb->csio.sense_data and it calculates 18
from ccb->csio.sense_len - ccb->csio.sense_resid (32 - 14). I don't know if
that is correct or not.
FWIW, here is the output from CentOS 6.3 on the same machine:
REPORT-IOCTL: Device=/dev/sdc Command=SMART STATUS CHECK
Input: FR=0xda, SC=...., LL=...., LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0
[ata pass-through(16): 85 06 2c 00 da 00 00 00 00 00 4f 00 c2 00 b0 00 ]
scsi_status=0x2, host_status=0x0, driver_status=0x8
info=0x1 duration=17 milliseconds resid=0
>>> Sense buffer, len=22:
00 72 00 00 00 00 00 00 0e 09 0c 00 00 00 00 00 00
10 00 4f 00 c2 40 50
status=2: [desc] sense_key=0 asc=0 ascq=0
Values from ATA Return Descriptor are:
00 09 0c 00 00 00 00 00 00 00 4f 00 c2 40 50
[Duration: 0.016s]
Output: ERR=0x00, SC=0x00, LL=0x00, LM=0x4f, LH=0xc2, DEV=0x40, STS=0x50
REPORT-IOCTL: Device=/dev/sdc Command=SMART STATUS CHECK returned 0
It appears to have the same ata pass-through command but completely different
sense data.
__Martin
More information about the freebsd-scsi
mailing list