From: Arne Fitzenreiter Date: Wed, 15 Jul 2015 11:54:37 +0000 (+0200) Subject: libata: force disable trim for SuperSSpeed S238 X-Git-Tag: v3.18.21~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dfacf53c1a6ecfd3ae1d81ac173c00366cb4db79;p=thirdparty%2Fkernel%2Fstable.git libata: force disable trim for SuperSSpeed S238 [ Upstream commit cda57b1b05cf7b8b99ab4b732bea0b05b6c015cc ] This device loses blocks, often the partition table area, on trim. Disable TRIM. http://pcengines.ch/msata16a.htm Signed-off-by: Arne Fitzenreiter Signed-off-by: Tejun Heo Cc: stable@vger.kernel.org Signed-off-by: Sasha Levin --- diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index c40fca47e0fa0..2247b0c4e9c40 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c @@ -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