Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Bug 191717] [iscsi] smartctl -H gives "ATA output registers missing" for a disk using the isci driver

113 views
Skip to first unread message

bugzilla...@freebsd.org

unread,
Jul 7, 2014, 9:45:58 PM7/7/14
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

Mark Linimon <lin...@FreeBSD.org> changed:

What |Removed |Added
----------------------------------------------------------------------------
Assignee|freebs...@FreeBSD.org |freebs...@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 <lin...@FreeBSD.org> ---
Over to maintainers.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
freebs...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-scsi
To unsubscribe, send any mail to "freebsd-scsi...@freebsd.org"

Douglas Gilbert

unread,
Jul 7, 2014, 11:12:27 PM7/7/14
to
On 14-07-07 09:45 PM, bugzilla...@freebsd.org wrote:
> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717
>
> Mark Linimon <lin...@FreeBSD.org> changed:
>
> What |Removed |Added
> ----------------------------------------------------------------------------
> Assignee|freebs...@FreeBSD.org |freebs...@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 <lin...@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.

Doug Gilbert

Christian Franke

unread,
Jul 8, 2014, 1:37:05 AM7/8/14
to
Douglas Gilbert wrote:
> On 14-07-07 09:45 PM, bugzilla...@freebsd.org wrote:
>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717
>>
>> Mark Linimon <lin...@FreeBSD.org> changed:
>>
>> What |Removed |Added
>> ----------------------------------------------------------------------------
>>
>> Assignee|freebs...@FreeBSD.org |freebs...@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 <lin...@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
>

Is this possibly fixed format sense data for SAT ATA PASS-THROUGH?

If yes, this is a testcase for
http://www.smartmontools.org/ticket/296

Christian

Martin Simmons

unread,
Jul 8, 2014, 7:45:59 AM7/8/14
to
>>>>> 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

Douglas Gilbert

unread,
Jul 8, 2014, 1:43:33 PM7/8/14
to
The SAT standard originally only defined "descriptor" sense
data format for passing back ATA errors and warning. That is
what is being done properly in the Centos 6.3 output that
you have shown above.

More recently someone at T10 objected that SAT ignored the D_SENSE
flag which allows an application client to choose whether it wants
"fixed" or "descriptor" sense data format. It looks like the FreeBSD
case is trying to produce the equivalent "fixed" sense data, but it
fails to format it properly.

So in the FreeBSD case you are looking for the SAT Layer (SATL). It
could be in the FreeBSD CAM mid-level, the driver code or firmware,
or in a remote device like a USB bridge. However if it was in something
like a USB bridge then you would expect FreeBSD and Linux to react
the same way. So it looks like a FreeBSD bug.

Doug Gilbert

Douglas Gilbert

unread,
Jul 9, 2014, 2:23:06 PM7/9/14
to
On 14-07-09 12:44 PM, Jim Harris wrote:

>
>
>
> On Tue, Jul 8, 2014 at 10:43 AM, Douglas Gilbert <dgil...@interlog.com
> <mailto:dgil...@interlog.com>> wrote:
>
> On 14-07-08 07:45 AM, Martin Simmons wrote:
>
> On Mon, 07 Jul 2014 23:12:27 -0400, Douglas Gilbert
> said:
>
>
> On 14-07-07 09:45 PM, bugzilla-noreply at freebsd.org
> <http://freebsd.org> wrote:
>
> https://bugs.freebsd.org/__bugzilla/show_bug.cgi?id=__191717

> <https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717>
>
> Mark Linimon <linimon at FreeBSD.org> changed:
>
> What |Removed |Added
> ------------------------------__------------------------------__----------------
> Apologies for missing this thread until now.
>
> The SATL that is generating this fixed format sense data is in the isci driver
> itself. I think isci is returning the fixed format sense data correctly. My
> reading of the SPC spec is that fixed format sense data is 18 bytes + additional
> sense length, so if sense_data[7] == 0, then the sense data should indeed be 18
> bytes long.

Wrong. See spc4r37.pdf section 4.5.3 or any SCSI standard
back to SCSI-2. In table 53 — "Fixed format sense data" in
the byte 7 row is written: "ADDITIONAL SENSE LENGTH (n-7)".
For the typical (fixed format) sense data length of 18, n
will be 17 since the bytes count from 0. So byte 7 should
contain 10 (0xa in hex) to indicate an 18 byte sense data
buffer.

Thanks for identifying the isci as the culprit.

As a general rule in SCSI standards and drafts "additional
length" fields count starting from the byte following that
field. This is no exception, so the isci driver may be
making the same mistake elsewhere.

SAT-3 also indicates that for fixed format sense data for ATA
> PASSTHROUGH commands, there are no additional sense bytes - everything is
> returned in the INFORMATION and COMMAND-SPECIFIC INFORMATION bytes which are
> part of the first 18 bytes.
>
> I have looked a little at the smartctl code, and it does not look like it
> supports fixed format sense data - at least for ATA PASSTHROUGH. It expects
> additional sense length to be non-zero. smartctl could be fixed, but I think
> for compatibility, I should have isci return descriptor sense for ATA
> PASSTHROUGH commands instead.
>
> Martin - could you please test the attached patch? This passes your test case
> using smartctl 6.3 r3939.

Martin Simmons

unread,
Jul 10, 2014, 8:03:26 AM7/10/14
to
>>>>> On Wed, 9 Jul 2014 09:44:54 -0700, Jim Harris said:
>
> I have looked a little at the smartctl code, and it does not look like it
> supports fixed format sense data - at least for ATA PASSTHROUGH. It
> expects additional sense length to be non-zero. smartctl could be fixed,
> but I think for compatibility, I should have isci return descriptor sense
> for ATA PASSTHROUGH commands instead.
>
> Martin - could you please test the attached patch? This passes your test
> case using smartctl 6.3 r3939.

Thanks, that fixes my setup too with smartctl 6.2 r3874 from ports.

__Martin

bugzilla...@freebsd.org

unread,
Sep 9, 2014, 12:21:03 PM9/9/14
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

Edward Tomasz Napierala <tr...@FreeBSD.org> changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |tr...@FreeBSD.org
Summary|[iscsi] smartctl -H gives |[isci] smartctl -H gives
|"ATA output registers |"ATA output registers
|missing" for a disk using |missing" for a disk using
|the isci driver |the isci driver

--- Comment #2 from Edward Tomasz Napierala <tr...@FreeBSD.org> ---
Unrelated to iSCSI.

--
You are receiving this mail because:
You are the assignee for the bug.

bugzilla...@freebsd.org

unread,
Mar 10, 2015, 1:16:32 PM3/10/15
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

Christian Franke <christia...@t-online.de> changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |christian.franke@t-online.d
| |e

--- Comment #3 from Christian Franke <christia...@t-online.de> ---
> >>> Sense buffer, len=18:
> 00 f0 00 01 00 50 40 00 00 00 c2 4f 00 00 1d 00 00
> 10 00 00
> status=0x2: sense_key=0x1 asc=0x0 ascq=0x1d
> [Duration: 0.016s]
> SMART STATUS RETURN: incomplete response, ATA output registers missing

This is an upstream smartctl issue. The sense data above uses the fixed format
sense data format which returns ATA output registers from SAT ATA PASS-THROUGH
cmd:

f0 = VALID | RESPONSE CODE: FIXED FORMAT
00 = ...
01 = ... | SENSE KEY: RECOVERED ERROR
00 = ATA ERROR register
50 = ATA STATUS register
40 = ATA DEVICE register
00 = ATA COUNT register
00 = ...
00 = ...
c2 = ATA LBA HIGH register ] SMART ...
4f = ATA LBA MID register ] ... STATUS OK
00 = ATA LBA LOW register
00 = ASC ] ATA PASS THROUGH ...
1d = ASCQ ] ... INFORMATION AVAILABLE
...

This format is a late addition to (or: fix of) SAT standard and not yet
detected by smartmontools.

See: http://www.smartmontools.org/ticket/296

bugzilla...@freebsd.org

unread,
Mar 11, 2015, 12:17:02 PM3/11/15
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

--- Comment #4 from mar...@lispworks.com ---
Created attachment 154205
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=154205&action=edit
Compatibility patch written by Jim Harris

Despite the smartctl ticket, you might consider the attached compatibility
patch written by Jim Harris (see
http://lists.freebsd.org/pipermail/freebsd-scsi/2014-July/006382.html), which
has worked well for me in FreeBSD 10.0.

bugzilla...@freebsd.org

unread,
Mar 14, 2015, 3:30:12 PM3/14/15
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

sa...@os2.kiev.ua changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |sa...@os2.kiev.ua

--- Comment #5 from sa...@os2.kiev.ua ---
recent commit in smartmontools project adds support for the SAT ATA
PASS-THROUGH fixed format sense data. Please try to build it from SVN and
report if it works.

bugzilla...@freebsd.org

unread,
Jun 19, 2015, 12:11:14 PM6/19/15
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

--- Comment #6 from mar...@lispworks.com ---
It still fails in the same way with smartctl svn.
The machine is now running unpatched 10.1-RELEASE-p13.

According to
http://lists.freebsd.org/pipermail/freebsd-scsi/2014-July/006383.html on the
same thread as the compatibility patch, the kernel is returning the wrong value
for byte 7 in the fixed format sense data buffer, which should be 10 rather
than 0.

He seems to have a good point, so it looks like
sati_scsi_fixed_sense_data_construct and sati_scsi_common_fixed_sense_construct
need to byte 7, like sati_scsi_common_descriptor_sense_construct and
sati_scsi_descriptor_sense_data_construct do.

This is a production machine, so I'm not confident enough to just change this
without additional input from someone who knows about this stuff in FreeBSD.

bugzilla...@freebsd.org

unread,
Aug 18, 2015, 6:36:37 AM8/18/15
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

mar...@lispworks.com changed:

What |Removed |Added
----------------------------------------------------------------------------
Attachment #154205|0 |1
is obsolete| |

--- Comment #7 from mar...@lispworks.com ---
Created attachment 159976
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=159976&action=edit
Patch to set byte 7 (ADDITIONAL SENSE LENGTH) of fixed format sense data

Here is a new patch that fixes the kernel to work with smartctl. It also
allows camcontrol to report the correct error when trying to eject the fixed
disk with camcontrol eject 0:0:0 -v.

This patch does two things:

1) Sets the correct value for byte 7 (ADDITIONAL SENSE LENGTH) of the fixed
format sense data in sati_scsi_fixed_sense_data_construct and
sati_scsi_common_fixed_sense_construct.

2) Sets the lba fields correctly for the ATA PASS-THROUGH response in
sati_passthrough_construct_sense (the bytes were in the wrong order). This is
needed for smartctl.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
freebs...@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-scsi

bugzilla...@freebsd.org

unread,
Jan 7, 2016, 11:32:00 AM1/7/16
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

--- Comment #8 from Matthew L. Dailey <matthew....@dartmouth.edu> ---
FWIW, I think I've run into this on one of my systems running FreeBSD
10.2-RELEASE-p7 amd64 and smartctl 6.4 2015-06-04 r4109.

Unfortunately, this system is in production, so I can't try the kernel patch in
this bug report, but wanted to pass along this info in case it was helpful. If
I find another system exhibiting this behavior or am able to test the kernel
patch on this system, I'll update again.

The hardware looks like this (from dmesg):
ses0 at ahciem0 bus 0 scbus7 target 0 lun 0
ses0: <AHCI SGPIO Enclosure 1.00 0001> SEMB S-E-S 2.00 device
ses0: SEMB SES Device
da0 at isci0 bus 0 scbus0 target 0 lun 0
da0: <ATA WDC WD1002F9YZ-0 1M03> Fixed Direct Access SCSI-5 device
da1 at isci0 bus 0 scbus0 target 1 lun 0
da1: <ATA INTEL SSDSC2BA10 0270> Fixed Direct Access SCSI-5 device
da0: Serial Number BTTV4494014Z100FGN
da0: 300.000MB/s transfers
da0: Command Queueing enabled
da0: 95396MB (195371568 512 byte sectors: 255H 63S/T 12161C)
da2 at isci0 bus 0 scbus0 target 2 lun 0
da3 at isci0 bus 0 scbus0 target 3 lun 0
da2: <ATA WDC WD1002F9YZ-0 1M03> Fixed Direct Access SCSI-5 device
da3: <ATA WDC WD1002F9YZ-0 1M03> Fixed Direct Access SCSI-5 device
da1: Serial Number WD-WMC5K0D20LKL
da1: 300.000MB/s transfers
da1: Command Queueing enabled
da1: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
da2: Serial Number WD-WMC5K0D1AM6Y
da3: Serial Number WD-WMC5K0DAKT6E
da2: 300.000MB/s transfers
da3: 300.000MB/s transfers
da2: Command Queueing enabled
da2: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)
da3: Command Queueing enabled
da3: 953869MB (1953525168 512 byte sectors: 255H 63S/T 121601C)

Running smartctl -H on any of these devices shows this:
# smartctl -H /dev/da0
smartctl 6.4 2015-06-04 r4109 [FreeBSD 10.2-RELEASE-p7 amd64] (local build)
Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Status not supported: Incomplete response, ATA output registers missing
SMART overall-health self-assessment test result: PASSED
Warning: This result is based on an Attribute check.

Full output is:
# smartctl -H -r ioctl,2 /dev/da0
smartctl 6.4 2015-06-04 r4109 [FreeBSD 10.2-RELEASE-p7 amd64] (local build)
Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org

[inquiry: 12 00 00 00 24 00 ]
CAM status=0x1, SCSI status=0x0, resid=0x0
Incoming data, len=36:
00 00 00 05 02 3e 00 00 02 41 54 41 20 20 20 20 20
10 49 4e 54 45 4c 20 53 53 44 53 43 32 42 41 31 30
20 30 32 37 30
status=0x0
[ata pass-through(16): 85 08 0e 00 00 00 01 00 00 00 00 00 00 00 ec 00 ]
CAM status=0x1, SCSI status=0x0, resid=0x0
Incoming data, len=512 [only first 256 bytes shown]:
00 40 00 ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00
10 00 00 00 00 54 42 56 54 34 34 34 39 31 30 5a 34
20 30 31 46 30 4e 47 20 20 00 00 00 00 00 00 44 35
30 31 56 32 30 30 37 4e 49 45 54 20 4c 53 53 53 44
40 32 43 41 42 30 31 47 30 20 33 20 20 20 20 20 20
50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01 80
60 00 40 00 2f 00 40 00 00 00 00 07 00 ff 3f 10 00
70 3f 00 10 fc fb 00 01 b1 30 22 a5 0b 00 00 07 00
80 03 00 78 00 78 00 78 00 78 00 30 40 00 00 00 00
90 00 00 00 00 00 00 1f 00 0e 85 04 00 40 00 40 00
a0 fc 03 10 01 6b 74 01 75 63 61 69 74 01 b4 63 61
b0 7f 40 02 00 02 00 00 00 fe ff 00 00 00 00 00 00
c0 00 00 00 00 00 00 00 00 30 22 a5 0b 00 00 00 00
d0 00 00 06 00 03 60 00 00 cd 55 40 2e 73 4b af 5d
e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c 40
f0 1c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00
status=0x0

REPORT-IOCTL: Device=/dev/da0 Command=IDENTIFY DEVICE
Input: FR=...., SC=0x01, LL=...., LM=...., LH=...., DEV=...., CMD=0xec IN
[ata pass-through(16): 85 08 0e 00 00 00 01 00 00 00 00 00 00 00 ec 00 ]
CAM status=0x1, SCSI status=0x0, resid=0x0
Incoming data, len=512 [only first 256 bytes shown]:
00 40 00 ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00
10 00 00 00 00 54 42 56 54 34 34 34 39 31 30 5a 34
20 30 31 46 30 4e 47 20 20 00 00 00 00 00 00 44 35
30 31 56 32 30 30 37 4e 49 45 54 20 4c 53 53 53 44
40 32 43 41 42 30 31 47 30 20 33 20 20 20 20 20 20
50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01 80
60 00 40 00 2f 00 40 00 00 00 00 07 00 ff 3f 10 00
70 3f 00 10 fc fb 00 01 b1 30 22 a5 0b 00 00 07 00
80 03 00 78 00 78 00 78 00 78 00 30 40 00 00 00 00
90 00 00 00 00 00 00 1f 00 0e 85 04 00 40 00 40 00
a0 fc 03 10 01 6b 74 01 75 63 61 69 74 01 b4 63 61
b0 7f 40 02 00 02 00 00 00 fe ff 00 00 00 00 00 00
c0 00 00 00 00 00 00 00 00 30 22 a5 0b 00 00 00 00
d0 00 00 06 00 03 60 00 00 cd 55 40 2e 73 4b af 5d
e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c 40
f0 1c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00
status=0x0
[Duration: 0.001s]
REPORT-IOCTL: Device=/dev/da0 Command=IDENTIFY DEVICE returned 0

===== [IDENTIFY DEVICE] DATA START (BASE-16) =====
000-015: 40 00 ff 3f 37 c8 10 00 00 00 00 00 3f 00 00 00 |@..?7.......?...|
016-031: 00 00 00 00 54 42 56 54 34 34 34 39 31 30 5a 34 |....TBVT444910Z4|
032-047: 30 31 46 30 4e 47 20 20 00 00 00 00 00 00 44 35 |01F0NG ......D5|
048-063: 31 56 32 30 30 37 4e 49 45 54 20 4c 53 53 53 44 |1V2007NIET LSSSD|
064-079: 32 43 41 42 30 31 47 30 20 33 20 20 20 20 20 20 |2CAB01G0 3 |
080-095: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01 80 | ..|
096-111: 00 40 00 2f 00 40 00 00 00 00 07 00 ff 3f 10 00 |.@./.@.......?..|
112-127: 3f 00 10 fc fb 00 01 b1 30 22 a5 0b 00 00 07 00 |?.......0"......|
128-143: 03 00 78 00 78 00 78 00 78 00 30 40 00 00 00 00 |..x.x.x.x.0@....|
144-159: 00 00 00 00 00 00 1f 00 0e 85 04 00 40 00 40 00 |............@.@.|
160-175: fc 03 10 01 6b 74 01 75 63 61 69 74 01 b4 63 61 |....kt.ucait..ca|
176-191: 7f 40 02 00 02 00 00 00 fe ff 00 00 00 00 00 00 |.@..............|
192-207: 00 00 00 00 00 00 00 00 30 22 a5 0b 00 00 00 00 |........0"......|
208-223: 00 00 06 00 03 60 00 00 cd 55 40 2e 73 4b af 5d |.....`...U@.sK.]|
224-239: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 5c 40 |..............\@|
240-255: 1c 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.@..............|
256-271: 21 00 1c 00 00 00 00 00 00 00 00 00 00 00 00 00 |!...............|
272-287: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
288-303: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
336-351: 03 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
352-367: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
368-383: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
384-399: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
400-415: 20 20 20 20 20 20 20 20 20 20 20 20 3d 00 00 00 | =...|
416-431: 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 |...@............|
432-447: 00 00 01 00 00 00 00 00 00 00 00 00 1f 10 00 00 |................|
448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
464-479: 00 00 00 00 01 00 ff ff 00 00 00 00 00 00 00 00 |................|
480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a5 22 |..............."|
===== [IDENTIFY DEVICE] DATA END (512 Bytes) =====


REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE VALUES
Input: FR=0xd0, SC=0x01, LL=...., LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN
[ata pass-through(16): 85 08 0e 00 d0 00 01 00 00 00 4f 00 c2 00 b0 00 ]
CAM status=0x1, SCSI status=0x0, resid=0x0
Incoming data, len=512 [only first 256 bytes shown]:
00 01 00 05 32 00 64 64 00 00 00 00 00 00 00 09 32
10 00 64 64 c0 1d 00 00 00 00 00 0c 32 00 64 64 0c
20 00 00 00 00 00 00 aa 33 00 64 64 00 00 00 00 00
30 00 00 ab 32 00 64 64 00 00 00 00 00 00 00 ac 32
40 00 64 64 00 00 00 00 00 00 00 ae 32 00 64 64 08
50 00 00 00 00 00 00 af 33 00 64 64 66 02 a7 1e 2d
60 00 00 b7 32 00 64 64 00 00 00 00 00 00 00 b8 33
70 00 64 64 00 00 00 00 00 00 00 bb 32 00 64 64 00
80 00 00 00 00 00 00 be 22 00 50 4e 14 00 13 1c 00
90 00 00 c0 32 00 64 64 08 00 00 00 00 00 00 c2 22
a0 00 64 64 1b 00 00 00 00 00 00 c5 32 00 64 64 00
b0 00 00 00 00 00 00 c7 3e 00 64 64 00 00 00 00 00
c0 00 00 e1 32 00 64 64 9b 17 1f 00 00 00 00 e2 32
d0 00 64 64 14 08 00 00 00 00 00 e3 32 00 64 64 05
e0 00 00 00 00 00 00 e4 32 00 64 64 ec f8 06 00 00
f0 00 00 e8 33 00 64 64 00 00 00 00 00 00 00 e9 32
status=0x0
[Duration: 0.001s]
REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE VALUES returned 0

===== [SMART READ ATTRIBUTE VALUES] DATA START (BASE-16) =====
000-015: 01 00 05 32 00 64 64 00 00 00 00 00 00 00 09 32 |...2.dd........2|
016-031: 00 64 64 c0 1d 00 00 00 00 00 0c 32 00 64 64 0c |.dd........2.dd.|
032-047: 00 00 00 00 00 00 aa 33 00 64 64 00 00 00 00 00 |.......3.dd.....|
048-063: 00 00 ab 32 00 64 64 00 00 00 00 00 00 00 ac 32 |...2.dd........2|
064-079: 00 64 64 00 00 00 00 00 00 00 ae 32 00 64 64 08 |.dd........2.dd.|
080-095: 00 00 00 00 00 00 af 33 00 64 64 66 02 a7 1e 2d |.......3.ddf...-|
096-111: 00 00 b7 32 00 64 64 00 00 00 00 00 00 00 b8 33 |...2.dd........3|
112-127: 00 64 64 00 00 00 00 00 00 00 bb 32 00 64 64 00 |.dd........2.dd.|
128-143: 00 00 00 00 00 00 be 22 00 50 4e 14 00 13 1c 00 |.......".PN.....|
144-159: 00 00 c0 32 00 64 64 08 00 00 00 00 00 00 c2 22 |...2.dd........"|
160-175: 00 64 64 1b 00 00 00 00 00 00 c5 32 00 64 64 00 |.dd........2.dd.|
176-191: 00 00 00 00 00 00 c7 3e 00 64 64 00 00 00 00 00 |.......>.dd.....|
192-207: 00 00 e1 32 00 64 64 9b 17 1f 00 00 00 00 e2 32 |...2.dd........2|
208-223: 00 64 64 14 08 00 00 00 00 00 e3 32 00 64 64 05 |.dd........2.dd.|
224-239: 00 00 00 00 00 00 e4 32 00 64 64 ec f8 06 00 00 |.......2.dd.....|
240-255: 00 00 e8 33 00 64 64 00 00 00 00 00 00 00 e9 32 |...3.dd........2|
256-271: 00 62 62 00 00 00 00 00 00 00 ea 32 00 64 64 00 |.bb........2.dd.|
272-287: 00 00 00 00 00 00 f1 32 00 64 64 9b 17 1f 00 00 |.......2.dd.....|
288-303: 00 00 f2 32 00 64 64 89 a5 01 00 00 00 00 00 00 |...2.dd.........|
304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
336-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
352-367: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 79 |...............y|
368-383: 03 00 01 00 01 02 02 00 00 00 00 00 00 00 00 00 |................|
384-399: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
400-415: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
416-431: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
432-447: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
464-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2e |................|
===== [SMART READ ATTRIBUTE VALUES] DATA END (512 Bytes) =====


REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE THRESHOLDS
Input: FR=0xd1, SC=0x01, LL=0x01, LM=0x4f, LH=0xc2, DEV=...., CMD=0xb0 IN
[ata pass-through(16): 85 08 0e 00 d1 00 01 00 01 00 4f 00 c2 00 b0 00 ]
CAM status=0x1, SCSI status=0x0, resid=0x0
Incoming data, len=512 [only first 256 bytes shown]:
00 01 00 05 00 00 00 00 00 00 00 00 00 00 00 09 00
10 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 00 00
20 00 00 00 00 00 00 aa 0a 00 00 00 00 00 00 00 00
30 00 00 ab 00 00 00 00 00 00 00 00 00 00 00 ac 00
40 00 00 00 00 00 00 00 00 00 00 ae 00 00 00 00 00
50 00 00 00 00 00 00 af 0a 00 00 00 00 00 00 00 00
60 00 00 b7 00 00 00 00 00 00 00 00 00 00 00 b8 5a
70 00 00 00 00 00 00 00 00 00 00 bb 00 00 00 00 00
80 00 00 00 00 00 00 be 00 00 00 00 00 00 00 00 00
90 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 c2 00
a0 00 00 00 00 00 00 00 00 00 00 c5 00 00 00 00 00
b0 00 00 00 00 00 00 c7 00 00 00 00 00 00 00 00 00
c0 00 00 e1 00 00 00 00 00 00 00 00 00 00 00 e2 00
d0 00 00 00 00 00 00 00 00 00 00 e3 00 00 00 00 00
e0 00 00 00 00 00 00 e4 00 00 00 00 00 00 00 00 00
f0 00 00 e8 0a 00 00 00 00 00 00 00 00 00 00 e9 00
status=0x0
REPORT-IOCTL: Device=/dev/da0 Command=SMART READ ATTRIBUTE THRESHOLDS returned
0

===== [SMART READ ATTRIBUTE THRESHOLDS] DATA START (BASE-16) =====
000-015: 01 00 05 00 00 00 00 00 00 00 00 00 00 00 09 00 |................|
016-031: 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 00 00 |................|
032-047: 00 00 00 00 00 00 aa 0a 00 00 00 00 00 00 00 00 |................|
048-063: 00 00 ab 00 00 00 00 00 00 00 00 00 00 00 ac 00 |................|
064-079: 00 00 00 00 00 00 00 00 00 00 ae 00 00 00 00 00 |................|
080-095: 00 00 00 00 00 00 af 0a 00 00 00 00 00 00 00 00 |................|
096-111: 00 00 b7 00 00 00 00 00 00 00 00 00 00 00 b8 5a |...............Z|
112-127: 00 00 00 00 00 00 00 00 00 00 bb 00 00 00 00 00 |................|
128-143: 00 00 00 00 00 00 be 00 00 00 00 00 00 00 00 00 |................|
144-159: 00 00 c0 00 00 00 00 00 00 00 00 00 00 00 c2 00 |................|
160-175: 00 00 00 00 00 00 00 00 00 00 c5 00 00 00 00 00 |................|
176-191: 00 00 00 00 00 00 c7 00 00 00 00 00 00 00 00 00 |................|
192-207: 00 00 e1 00 00 00 00 00 00 00 00 00 00 00 e2 00 |................|
208-223: 00 00 00 00 00 00 00 00 00 00 e3 00 00 00 00 00 |................|
224-239: 00 00 00 00 00 00 e4 00 00 00 00 00 00 00 00 00 |................|
240-255: 00 00 e8 0a 00 00 00 00 00 00 00 00 00 00 e9 00 |................|
256-271: 00 00 00 00 00 00 00 00 00 00 ea 00 00 00 00 00 |................|
272-287: 00 00 00 00 00 00 f1 00 00 00 00 00 00 00 00 00 |................|
288-303: 00 00 f2 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
304-319: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
320-335: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
336-351: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
352-367: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
368-383: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
384-399: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
400-415: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
416-431: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
432-447: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
448-463: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
464-479: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
480-495: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
496-511: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 |................|
===== [SMART READ ATTRIBUTE THRESHOLDS] DATA END (512 Bytes) =====

=== START OF READ SMART DATA SECTION ===

REPORT-IOCTL: Device=/dev/da0 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 ]
CAM status=0x8c, SCSI status=0x2, resid=0x0
sense_len=0x20, sense_resid=0xe
>>> Sense buffer, len=18:
00 f0 00 01 00 50 00 00 00 00 c2 4f 00 00 1d 00 00
10 00 00
status=0x2: sense_key=0x1 asc=0x0 ascq=0x1d
[Duration: 0.001s]
REPORT-IOCTL: Device=/dev/da0 Command=SMART STATUS CHECK returned -1 errno=78
[Incomplete response, ATA output registers missing]
SMART Status not supported: Incomplete response, ATA output registers missing
SMART overall-health self-assessment test result: PASSED
Warning: This result is based on an Attribute check.

bugzilla...@freebsd.org

unread,
Jan 7, 2016, 3:20:48 PM1/7/16
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

--- Comment #9 from Christian Franke <christia...@t-online.de> ---
The ADDITIONAL SENSE LENGTH in byte 7 is 00 but should be at least 06:
> >>> Sense buffer, len=18:
> 00 f0 00 01 00 50 00 00 00 00 c2 4f 00 00 1d ...
------------------------------^^ [.....IGNORED.....]

See also comment 6 and comment 7 above.

bugzilla...@freebsd.org

unread,
Jul 1, 2016, 10:49:59 AM7/1/16
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

--- Comment #10 from mar...@lispworks.com ---
(In reply to martin from comment #7)
I've been running with the patch to set byte 7 in 10.1 for 11 months without
any problems. Would anyone like to merge it?

bugzilla...@freebsd.org

unread,
Jul 6, 2016, 4:49:35 PM7/6/16
to
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=191717

--- Comment #11 from commi...@freebsd.org ---
A commit references this bug:

Author: jimharris
Date: Wed Jul 6 20:48:43 UTC 2016
New revision: 302380
URL: https://svnweb.freebsd.org/changeset/base/302380

Log:
isci: fix ATA PASSTHROUGH fixed sense data format

PR: kern/191717
Submitted by: mar...@lispworks.com
Approved by: re (gjb)
MFC after: 3 days

Changes:
head/sys/dev/isci/scil/sati_passthrough.c
head/sys/dev/isci/scil/sati_util.c
0 new messages