SSD SATA 3.1 Samsung 870 EVO

Salve a tutti e buona domenica

Volevo chiedere delucidazioni su questo SSD in merito al blacklist:

{ "Samsung SSD 870*",		NULL,	ATA_HORKAGE_NO_NCQ_TRIM |
						ATA_HORKAGE_ZERO_AFTER_TRIM |

In giro per la rete pare che il Queued Trim sia stato disabilitato (?) e che l’unita’ dovrebbe farlo “da sola” tramite il firmware (una ipotesi paventata da un utente ma senza riscontri o citando fonti ufficiali).

Purtroppo ho commesso l’errore del novizio (per causa maggiore) comprando alla cieca senza prima documentarmi.

Essendo un argomento molto tecnico non sono stato in grado di comprendere quali siano gli esiti di questa scellerata azione , sapreste dirmi qualcosa in merito?

Un drive tipo SSD con trim disabilitato potrebbe, a lungo andare, avere problemi di performance e wear-leveling. Poi dipende dall’uso che ne fai, o magari lo cambi prima che si manifesti qualche problema… Più serio il discorso blacklist in merito al NCQ per il tuo drive (ATA_HORKAGE_NO_NCQ_ON_ATI): spero che tu non ricada in questo altro problema.
L’alternativa al queued trim è il continuous trim (tramite l’opzione discard in fstab) ma viene sconsigliato quasi da tutti oramai (e non ho trovato indicazioni in merito riguardo agli effetti sui samsung).
Il trim fatto direttamente dal firmware del drive potrebbe anche essere, e forse è pure la causa dei problemi col kernel, ma bisognerebbe fare una ricerca specifica sui samsung ed essere fortunati (ad ogni modo tieni aggiornato il firmware).
Una ultima cosa: grazie al tuo post ho imparato che pure il mio vecchio 840 è in blacklist e anche se non è il mio disco primario, la cosa non mi fa piacere; tuttavia fin dagli albori gli ho impostato discard prima e queued trim poi e finora è andato tutto bene (non ho perdite di dati e il report di SMART è buono). Oltre a ciò su messages vedo che trim viene correttamente lanciato di lunedì e fa il suo dovere…
Concludendo: il drive è in blacklist per trim poiché diversi utenti hanno riscontrato problemi (non ho capito di che tipo), se togliendolo rischi solo un po’ di invecchiamento precoce direi che è sopportabile, terrei però controllato cosa fa trim quando viene lanciato (sempre che tu non abbia disabilitato il servizio).

Ciao

Allora dopo che samsung mi ha buttato la croce addosso ho fatto qualche ricerca piu approfondita nei limiti delle mie capacita’.
Pare che il problema sorga con il trim asincrono mentre con il trim “normale” (quello fatto con fstrim) non dovrebbero esserci problemi.
In piu Dmesg mi dice qualcosa (di negativo , almeno sembra).

ata1.00: 488397168 sectors, multi 1: LBA48 NCQ (depth 32), AA
ata1.00: Features: Trust Dev-Sleep NCQ-sndrcv
ata1.00: Enabling discard_zeroes_data

Seguendo una guida di archlinux

lsblk --discard
check the values of DISC-GRAN (discard granularity) and DISC-MAX (discard max bytes) columns. Non-zero values indicate TRIM support.

Anche qui tutto negativo , i valori sono diversi da zero.

hdparm -I /dev/sda | grep TRIM
* Data Set Management TRIM supported (limit 8 blocks)
* Deterministic read ZEROs after TRIM

Ho frainteso illudendomi o il problema non esiste piu?
Magari dipende dal mio chipset? (tutto intel , Thinkpad T450)

Link di Phoronix

Ciao.
Premessa: non sono un esperto. Ma a occhio, molti dei risultati che si trovano in rete relativamente a questo agomento, non sembrano essere scritti da esperti del settore. A naso ci sono molte imprecisioni e molta confusione.

Allora (per partecipare, per aggiungere confusione) secondo me c’è da separare varie questioni.
Le cose sono fatte a strati. Qui mi pare ci sia lo strato più vicino al firmware del disco (ncq, queued trim, ecc.) e lo strato più vicino al sistema operativo (fstrim, opzione discard, ecc.)
(Trim asincrono o sincrono? Esiste questa terminologia?)
Poi mi pare di capire che “queued trim” non è “trim periodico” (quello nel cron o del timer systemd) e “continuous trim” (che dev’essere l’opzione discard") non è il contrario di “queued trim”.

man fstrim dice:
“Running fstrim frequently, or even using mount -o discard, might negatively affect the lifetime of poor-quality SSD devices. For most desktop and server systems a sufficient trimming frequency
is once a week. Note that not all devices support a queued trim, so each trim command incurs a performance penalty on whatever else might be trying to use the disk at the time.”

Quindi mi pare di intendere che noi si possa sempre invocare l’operazione di trim su qualsiasi disco; poi come questa operazione venga fatta (queued o meno) dipende dal kernel, il kernel dirà al firmware del disco (o meglio, forse al controller) di farla in un modo o in un altro. Quindi se per questo disco, questi comandi (NCQ o che ne so) sono in blacklist, userà un altro metodo con la conseguenza che “each trim command incurs a performance penalty on whatever else might be trying to use the disk at the time”: semplicemente l’operazione di trim sarà più lenta, o meglio, rallenterà altre operazioni sul disco mentre sta facendo questo lavoro di trim.

Quindi secondo me non c’è da preoccuparsi. In ogni caso, come sostenuto anche nel man, far girare fstrim una volta alla settimana è più che sufficiente, funziona ed è sicuro.

Ciao

La regola aurea per gli SSD è, meno scrivi meglio è.
A meno che tu non abbia bisogno di prestazioni al limite o i dati che cancelli siano particolarmente delicati qualsiasi operazione come trim, che cancella fisicamente i record marcati come cancellati, sono tendenzialmente da evitare.

Non usando trim semplicemente, quando sì andrà a scrivere sopra un record marcato come cancellato, si avrà una leggera perdita di prestazioni dovuta all’operazione di cancellazione fatta prima della scrittura.

È anche vero però che il tempo passa e gli SSD migliorano.
Anche sul mio vecchio SSD SATA III Samsung, la cui garanzia di 5 anni è appena scaduta, che ha 150TB in scrittura garantiti, sono arrivato solamente a 13TB scritti.
Quelli nuovi hanno addirittura 300TB e 600TB garantiti in scrittura che raggiungerò fra 353 anni 8<)))

Ciao Ciao, Moreno

Sicuramente , e’ la base , la filastrocca del trim la conosco da lunga pezza.
Sulla questione del sincrono/asincrono non ne so nulla , e’ un termine che ho incontrato nelle discussioni relative a questo SSD.
Nel mio caso specifico di utilizzo empiricamente posso dire che non faccio mai scritture intensive sul disco.
L’unica cosa che viene manipolata giornalmente e’ il database di un gestionale grande piu o meno 1GB (non ricordo precisamente) e qualche immagine dicom scarticata ma non troppo spesso.
Ho disabilitato la scrittura del journal sul disco e la cache di firefox , non gioco mai , non scarico film , solo musica quando capita e selettivamente quindi niente archivioni di album. In teoria il disco e’ quasi sempre a riposo.

Ritornando alla questione queued , nel mio caso specifico in base agli output pare che il problema non sussista o mi sbaglio?

il chipset che gestisce il disco e’ :

Intel Corporation Wildcat Point-LP SATA Controller [AHCI Mode] (rev 03)