Re: [PATCH] libata: add ATA_HORKAGE_NO_NCQ_TRIM for Samsung 860 and 870 SSDs

From: Damien Le Moal
Date: Mon Aug 23 2021 - 10:16:03 EST


On 2021/08/23 18:52, Hans de Goede wrote:
> Commit ca6bfcb2f6d9 ("libata: Enable queued TRIM for Samsung SSD 860")
> limited the existing ATA_HORKAGE_NO_NCQ_TRIM quirk from "Samsung SSD 8*",
> covering all Samsung 800 series SSDs, to only apply to "Samsung SSD 840*"
> and "Samsung SSD 850*" series based on information from Samsung.
>
> But there is a large number of users which is still reporting issues
> with the Samsung 860 and 870 SSDs combined with Intel, ASmedia or
> Marvell SATA controllers and all reporters also report these problems
> going away when disabling queued trims.
>
> Note that with AMD SATA controllers users are reporting even worse
> issues and only completely disabling NCQ helps there, this will be
> addressed in a separate patch.
>
> Fixes: ca6bfcb2f6d9 ("libata: Enable queued TRIM for Samsung SSD 860")
> BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=203475
> Cc: stable@xxxxxxxxxxxxxxx
> Cc: Kate Hsuan <hpa@xxxxxxxxxx>
> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> ---
> drivers/ata/libata-core.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
> index 61c762961ca8..3eda3291952b 100644
> --- a/drivers/ata/libata-core.c
> +++ b/drivers/ata/libata-core.c
> @@ -3950,6 +3950,10 @@ static const struct ata_blacklist_entry ata_device_blacklist [] = {
> ATA_HORKAGE_ZERO_AFTER_TRIM, },
> { "Samsung SSD 850*", NULL, ATA_HORKAGE_NO_NCQ_TRIM |
> ATA_HORKAGE_ZERO_AFTER_TRIM, },
> + { "Samsung SSD 860*", NULL, ATA_HORKAGE_NO_NCQ_TRIM |
> + ATA_HORKAGE_ZERO_AFTER_TRIM, },
> + { "Samsung SSD 870*", NULL, ATA_HORKAGE_NO_NCQ_TRIM |
> + ATA_HORKAGE_ZERO_AFTER_TRIM, },
> { "FCCT*M500*", NULL, ATA_HORKAGE_NO_NCQ_TRIM |
> ATA_HORKAGE_ZERO_AFTER_TRIM, },
>
>
Reviewed-by: Damien Le Moal <damien.lemoal@xxxxxxx>

--
Damien Le Moal
Western Digital Research