Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Feb 2024 11:29:28 +0000
From:      cglogic <cglogic@protonmail.com>
To:        Andriy Gapon <avg@FreeBSD.org>
Cc:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   Re: git: c01af41c3c8f - main - ata_da: add quirk to disable NCQ TRIM for Samsung 860/870 SSDs
Message-ID:  <xQZ9rTt07vwgLknVqeC77uOk_rFVITpbrx2Omrn6FfUwhP4M64D0jJ6nmjvg51l_Up3mnJtrXxxcYiuTfU8t6DpHlMRsceuXoIGY1-zhBaI=@protonmail.com>
In-Reply-To: <fd15930c-4f47-4ed5-9136-ca507a881218@FreeBSD.org>
References:  <fd15930c-4f47-4ed5-9136-ca507a881218@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday, February 19th, 2024 at 1:03 PM, Andriy Gapon <avg@FreeBSD.org> w=
rote:

> On 19/02/2024 12:47, cglogic wrote:
>=20
> > Hello Andriy,
> >=20
> > I use ZFS with autotrim enabled on Samsung 860 PRO connected to Intel A=
HCI SATA controller for 9 years without any issue.
>=20
>=20
> I think that it was released in 2018?

You are right, it's 9 years old computer, SSD was added later.

>=20
> > Can I disable this quirk locally or have I revert the patch to continue=
 use NCQ TRIM with this SSD?
>=20
>=20
> I don't think that there is a way to disable the quirk, so you'll have to=
 revert.
> Note that ATA TRIM is still enabled, it's only NCQ TRIM that got disabled=
.

>From my understanding ATA TRIM is non-queued TRIM as opposed to NCQ TRIM.
With only ATA TRIM enabled, drive will have increased latency when large am=
ount of files deleted.

However I'm not sure how ZFS handles TRIMs, maybe it groups several TRIMs a=
nd then sends when drive is idle.
Another question is how this affects TRIM enabled swap partition.

In general, if I'm correct here, disabling NCQ TRIM should not be an issue =
for desktop usage, except for large git repository updates, etc.

>=20
> > On Monday, February 19th, 2024 at 12:09 PM, Andriy Gapon avg@FreeBSD.or=
g wrote:
> >=20
> > > The branch main has been updated by avg:
> > >=20
> > > URL: https://cgit.FreeBSD.org/src/commit/?id=3Dc01af41c3c8fdd570764ff=
9b6bfbad6ac9ca1664
> > >=20
> > > commit c01af41c3c8fdd570764ff9b6bfbad6ac9ca1664
> > > Author: Andriy Gapon avg@FreeBSD.org
> > >=20
> > > AuthorDate: 2024-02-19 10:08:12 +0000
> > > Commit: Andriy Gapon avg@FreeBSD.org
> > >=20
> > > CommitDate: 2024-02-19 10:08:12 +0000
> > >=20
> > > ata_da: add quirk to disable NCQ TRIM for Samsung 860/870 SSDs
> > >=20
> > > NCQ TRIM for Samsung 860/870 SSDs results in data corruption on syste=
ms
> > > with some SATA controllers.
> > >=20
> > > This can be easily reproduced using ZFS which uses TRIM and is able t=
o
> > > detect block content changes.
> > >=20
> > > Linux bug report for this issue:
> > > https://bugzilla.kernel.org/show_bug.cgi?id=3D201693
> > >=20
> > > Since at present we can not limit a quirk based on the contorller / S=
IM,
> > > apply the quirk in all cases.
> > >=20
> > > Reviewed by: imp
> > > MFC after: 2 weeks
> > > Differential Revision: https://reviews.freebsd.org/D43961
> > > ---
> > > sys/cam/ata/ata_da.c | 16 ++++++++++++++++
> > > 1 file changed, 16 insertions(+)
> > >=20
> > > diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c
> > > index f5d3aeca9329..d4a591943307 100644
> > > --- a/sys/cam/ata/ata_da.c
> > > +++ b/sys/cam/ata/ata_da.c
> > > @@ -727,6 +727,22 @@ static struct ada_quirk_entry ada_quirk_table[] =
=3D
> > > { T_DIRECT, SIP_MEDIA_FIXED, "", "Samsung SSD 850", "" },
> > > /quirks/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN
> > > },
> > > + {
> > > + /
> > > + * Samsung 860 SSDs
> > > + * 4k optimised, NCQ TRIM broken (normal TRIM fine)
> > > + /
> > > + { T_DIRECT, SIP_MEDIA_FIXED, "", "Samsung SSD 860*", "" },
> > > + /quirks/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN
> > > + },
> > > + {
> > > + /
> > > + * Samsung 870 SSDs
> > > + * 4k optimised, NCQ TRIM broken (normal TRIM fine)
> > > + /
> > > + { T_DIRECT, SIP_MEDIA_FIXED, "", "Samsung SSD 870*", "" },
> > > + /quirks/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN
> > > + },
> > > {
> > > /
> > > * Samsung SM863 Series SSDs (MZ7KM*)
>=20
>=20
> --
> Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?xQZ9rTt07vwgLknVqeC77uOk_rFVITpbrx2Omrn6FfUwhP4M64D0jJ6nmjvg51l_Up3mnJtrXxxcYiuTfU8t6DpHlMRsceuXoIGY1-zhBaI=>