[Bug 222802] [patch] QUIRK: KingDian S200 SSD which crashes when receiving a TRIM command
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Thu Oct 5 19:53:12 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=222802
Bug ID: 222802
Summary: [patch] QUIRK: KingDian S200 SSD which crashes when
receiving a TRIM command
Product: Base System
Version: 10.3-STABLE
Hardware: Any
OS: Any
Status: New
Keywords: patch
Severity: Affects Only Me
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: bsdpr at phoe.frmug.org
Keywords: patch
Created attachment 186926
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=186926&action=edit
KingDian S200 quirk preventing the kernel from issuing TRIM commands
Inexpensive KingDian SATA SSDs are experiencing failures when issued a TRIM
command. This can be observed when adding such a device as part of a zpool.
Kernel reports a timeout on the TRIM command; then a timeout on the INQUIRY
command; them the device reapears. It looks the SSD is crashing. The command is
retried, the SSD crash again, etc.
The device identifies itself as
ada1: <KingDian S200 60GB P0921B> ACS-2 ATA SATA 3.x device
ada1: Serial Number <elided>
ada1: 300.000MB/s transfers (SATA 2.x, UDMA5, PIO 512bytes)
ada1: 57241MB (117231408 512 byte sectors)
I was unable to keep track of the error messages as the system is unresponsive
while he tries to handle this situation which ultimately require powering the
host off to recover control.
To resolve this I had to add a new kind of quirk to ata_da.c, I called it
NO_TRIM. It simply clears the device's CAN_TRIM flag. When the quirk is in
effect for that device it can then succesfully be used as part of a zpool.
The quirk is applied to devices matching the "KingDian S200 *" pattern, there
is currently two models in that line only differing in capacity: 60 and 120 GB.
See
http://web.archive.org/web/20171005194459/https://www.king-dian.com/product-category/sata/s200/
The attached diff was made against svn revision 323189.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list