libata: force disable trim for SuperSSpeed S238
authorArne Fitzenreiter <arne_f@ipfire.org>
Wed, 15 Jul 2015 11:54:37 +0000 (13:54 +0200)
committerTejun Heo <tj@kernel.org>
Wed, 15 Jul 2015 15:22:35 +0000 (11:22 -0400)
This device loses blocks, often the partition table area, on trim.
Disable TRIM.
http://pcengines.ch/msata16a.htm

Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: stable@vger.kernel.org
drivers/ata/libata-core.c

index 58a6db8f08335f071502d1d998a086726bce04f9..ed2b218ea64dc7be374e2a0fcc9906c0f4e4e294 100644 (file)
@@ -4239,6 +4239,9 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
        { "Samsung SSD 8*",             NULL,   ATA_HORKAGE_NO_NCQ_TRIM |
                                                ATA_HORKAGE_ZERO_AFTER_TRIM, },
 
+       /* devices that don't properly handle TRIM commands */
+       { "SuperSSpeed S238*",          NULL,   ATA_HORKAGE_NOTRIM, },
+
        /*
         * As defined, the DRAT (Deterministic Read After Trim) and RZAT
         * (Return Zero After Trim) flags in the ATA Command Set are