Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: TRIM ondersteuning  (gelezen 1925 keer)

Offline Allard

  • Lid
TRIM ondersteuning
« Gepost op: 2014/07/01, 16:45:19 »
Ik beschik over een Crucial M500 SSD van 120GB. Nou heb ik op internet gelezen dat TRIM automatisch aanstaat in Ubuntu 14.04. Wanneer ik handmatig de onderstaande commando uitvoer krijg ik als output het volgende te zien:
allard@ubuntu-pc-allard:~$ sudo fstrim -v /
/: 0 bytes were trimmed

Wat houdt dat in, dat TRIM goed werkt? Volgens deze site hoort het inderdaad op 0 te staan wanneer je dat commando invoert?
http://www.richud.com/wiki/Ubuntu_SSD_Tweak#Do_I_have_TRIM_support.3F

Groeten,
Allard

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: TRIM ondersteuning
« Reactie #1 Gepost op: 2014/07/01, 17:55:26 »
Heb je de "discard" optie in /etc/fstab aangezet? Zo ja, dan is het normaal dat er niks getrimd wordt als je dat commando uitvoert. Het trimmen gebeurt dan direct zodra je iets verwijdert.

Heb je die optie niet dan werkt TRIM waarschijnlijk niet. Of  vlak daarvoor is net de periodieke trim gedaan zodat er nu niks gedaan hoeft te worden.

Een mogelijkheid om dit verder uit te zoeken vind je hier: http://techgage.com/article/enabling_and_testing_ssd_trim_support_under_linux/2/

Offline Pjotr

  • Lid
    • Makkelijke Linuxtips
Re: TRIM ondersteuning
« Reactie #2 Gepost op: 2014/07/01, 18:20:59 »
TRIM in fstab vind ik niet optimaal: dat vertraagt de boel onnodig. Pak je SSD eens zo aan:
https://sites.google.com/site/computertip/ssd

Offline Allard

  • Lid
Re: TRIM ondersteuning
« Reactie #3 Gepost op: 2014/07/01, 20:57:34 »
Daar ben ik weer. Waarschijnlijk staat de automatische TRIM uit. Wanneer je de script fstrim opent in /etc/cron.weekly, dan krijg je volgende tekst te zien:
#!/bin/sh
# call fstrim-all to trim all mounted file systems which support it
set -e

# This only runs on Intel and Samsung SSDs by default, as some SSDs with faulty
# firmware may encounter data loss problems when running fstrim under high I/O
# load (e. g.  https://launchpad.net/bugs/1259829). You can append the
# --no-model-check option here to disable the vendor check and run fstrim on
# all SSD drives.
exec fstrim-all

Het blijkt dus dat er SSD schijfjes zijn die dus een bug in de firmware hebben waardoor er data corruptie kan optreden, waaronder de Crucial M500 series met firmware MU03, deze zijn dan ook geblacklist in Ubuntu 14.04. Zie onderstaande links.

http://forum.crucial.com/t5/Solid-State-Drives-SSD/M500-M5x0-QUEUED-TRIM-data-corruption-alert-mostly-for-Linux/td-p/151028
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1259829
https://bugzilla.kernel.org/show_bug.cgi?id=71371

Er word beweert dat een firmware update het probleem verhelpt. Ik heb mijn firmware weken geleden al bijgewerkt naar de meest recente versie (MU05). En toen ik vandaag dus handmatig mijn SSD ging trimmen zag ik geen rare dingen in het logboek, maar voor de zekerheid laat ik het zo als het is omdat ik mijn systeem niet om zeep wil helpen, er zijn namelijk mensen die beweren dat met de nieuwste firmware de problemen alsnog aanwezig zijn.
« Laatst bewerkt op: 2014/07/01, 21:06:46 door Allard »


Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: TRIM ondersteuning
« Reactie #5 Gepost op: 2014/07/01, 22:49:22 »
Bedankt voor het melden van die firmware-update. Heb meteen mijn M500 bijgewerkt :)
Gelukkig draaide ik nog 12.04 met een oudere kernel (3.11.nogwat) dus geen last van de corruptie, maar daar zou ik bij een upgrade naar 14.04.1 wel last van hebben gekregen.

Overigens heb ik op dat systeem een cronjob gemaakt die 1x per dag fstrim uitvoert.
Op mijn andere computer met een Crucial M4 gebruik ik de discard optie in fstab.
Beide werken zonder problemen.

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: TRIM ondersteuning
« Reactie #6 Gepost op: 2014/07/01, 23:04:42 »
Ik beschik over een Crucial M500 SSD van 120GB. Nou heb ik op internet gelezen dat TRIM automatisch aanstaat in Ubuntu 14.04.
Mogelijk, ik heb een (wat oudere) OCZ-SOLID2 en Ubuntu 14.04 LTS installeerde bij mij /etc/cron.weekly/fstrim

Deze taak voert blijkbaar wekelijks een trimactie (fstrim-all) uit.
Klik links bovenin op Documentatie

Re: TRIM ondersteuning
« Reactie #7 Gepost op: 2014/07/02, 09:55:45 »
Ik kan mij een whitelist/blacklist van getrroffen SSD's herinneren, maar kan hem niet meer vinden.
Iemand een link?

Offline aartje

  • Lid
Re: TRIM ondersteuning
« Reactie #8 Gepost op: 2014/07/02, 11:49:18 »
Heb je de "discard" optie in /etc/fstab aangezet? Zo ja, dan is het normaal dat er niks getrimd wordt als je dat commando uitvoert. Het trimmen gebeurt dan direct zodra je iets verwijdert.

Heb je die optie niet dan werkt TRIM waarschijnlijk niet. Of  vlak daarvoor is net de periodieke trim gedaan zodat er nu niks gedaan hoeft te worden.

Een mogelijkheid om dit verder uit te zoeken vind je hier: http://techgage.com/article/enabling_and_testing_ssd_trim_support_under_linux/2/
De commando in dat artikel gingen bij mij niet goed dmv cut en paste, de "-" tekens waren (voor mij) niet correct.
De volgende commando's zijn wel goed:

sudo sh
cd /
seq 1 1000 > testfile
hdparm --fibmap testfile
sync
hdparm --read-sector 63847264 /dev/sda  (er staan waardes anders dan 00 in)
rm testfile
hdparm --read-sector 63847264 /dev/sda   (uitkomst blijft hetzelfde , 63847264 is voor iedereen anders!)
reboot

ik deed dus een een reboot, ik gebruik de /etc/rc.local methode, daarin staan de fstrim's van de diverse ssd-filesystemen.

Daarna weer:
sudo sh
cd /
hdparm --read-sector 63847264 /dev/sda

De waardes waren nu 00 (nul)  geworden. Dus fstrim doet het op deze manier.
Voorheen had ik ook nog "discard" in mijn fstab gezet maar dat heb ik maar weggehaald, anders is het dubbelop.




Offline Allard

  • Lid
Re: TRIM ondersteuning
« Reactie #9 Gepost op: 2014/11/19, 20:04:31 »
Ik kan mij een whitelist/blacklist van getrroffen SSD's herinneren, maar kan hem niet meer vinden.
Iemand een link?
@Vuurvosje,

Erg late reactie, maar ik moest even reageren op jouw vraag. Volgens mij is dit het wat je bedoelt:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/drivers/ata/libata-core.c

/* devices that don't properly handle queued TRIM commands */
{ "Micron_M500*", NULL, ATA_HORKAGE_NO_NCQ_TRIM, },
{ "Crucial_CT???M500SSD*", NULL, ATA_HORKAGE_NO_NCQ_TRIM, },
{ "Micron_M550*", NULL, ATA_HORKAGE_NO_NCQ_TRIM, },
{ "Crucial_CT*M550SSD*", NULL, ATA_HORKAGE_NO_NCQ_TRIM, },