Opened 7 years ago

Last modified 3 days ago

#13778 new bug

"check_sense: encountered DEFERRED ERROR - bye, bye" spams syslog

Reported by: waddlesplash Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: Drivers/Disk Version: R1/Development
Keywords: Cc:
Blocked By: Blocking: #13559
Platform: All

Description

As in title:

KERN: check_sense: encountered DEFERRED ERROR - bye, bye
KERN: Last message repeated 4 times.
KERN: Last message repeated 2 times.

Attaching syslog. Let me know if additional tracing would help in some way.

Attachments (1)

syslog (301.9 KB ) - added by waddlesplash 7 years ago.
syslog

Download all attachments as: .zip

Change History (6)

by waddlesplash, 7 years ago

Attachment: syslog added

syslog

comment:1 by korli, 7 years ago

As in https://github.com/haiku/haiku/blob/master/src/add-ons/kernel/generic/scsi_periph/error_handling.cpp#L40

Seems like it's AHCI related?

KERN: ahci: Probe: port 1 link speed 1.5Gb/s
1411	KERN: ahci: sata_request::finish ATA command 0xa0 failed: status 0x51, error 0x20
1412	KERN: ahci: sata_request::finish ATAPI packet 25 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (len 10)
1413	KERN: check_sense: encountered DEFERRED ERROR - bye, bye

comment:2 by diver, 7 years ago

Looks like a dupe of #13559.

comment:3 by waddlesplash, 6 years ago

Here's our code that runs that command: http://xref.plausible.coop/source/xref/haiku/src/add-ons/kernel/busses/scsi/ahci/sata_request.cpp#105

Here's the equivalent module from FreeBSD: http://xref.plausible.coop/source/xref/freebsd-11-stable/sys/dev/ahci/ahci.c#2385

It looks like FreeBSD sets bytes 7 and 15 also for 0xa0 (ATA_PACKET_CMD) with constants ("use LBA addressing" / "4 head bits"), and we don't. It also looks like they mask the length differently -- they just set bytes 5 and 6 to the length and length >> 8, while we also mask off 0xff.

comment:4 by waddlesplash, 6 years ago

<PulkoMandy> the masks make no difference if you are putting things into bytes anyways
<PulkoMandy> they do fis[1] = (ccb->ccb_h.target_id & 0x0f); and we don't

comment:5 by waddlesplash, 3 days ago

Blocking: 13559 added
Note: See TracTickets for help on using tickets.