In navolging van de Corsair MP700 PCIe 5.0 NVMe SSD-recensie onder Linux, waarbij veel lezers verrast waren door fouten in het bestandssysteem wanneer ze geen extra koeling toevoegden, zoals de passieve M.2-koelplaat van het moederbord, en nieuwsgierig waren naar de situatie zelf, zijn hier meer tests van uiteindelijk hoe dit drive zal op betrouwbare wijze binnen drie minuten of minder fouten in het bestandssysteem tegenkomen zonder extra koeling.

Nadat ik de standaard Linux-tests voor de Corsair MP700 2TB uit de weg had geruimd, deed ik wat verdere tests om te kijken naar de bestandssysteemfouten tijdens het draaien zonder enige toegevoegde koeling. Omdat men tenslotte normaal gesproken zou aannemen dat de NVMe solid-state drive zou vertragen voordat hij regelrecht op het punt van bestandssysteemfouten zou komen als er overmatige hitte was.

Zoals vermeld in de recensie, stuitte ik op bestandssysteemfouten bij het installeren van tests na een schone Ubuntu 23.04-installatie en ik kreeg niet eens de neiging om de NVMe-schijf echt te belasten met ijkpunten. Ik was dus best benieuwd hoe lang de schijf het zou volhouden onder de schijfbenchmarking-workloads als hij zonder enige aftermarket-koeling zou worden gebruikt. Om een ​​lang verhaal kort te maken, het duurde minder dan 3 minuten voordat er betrouwbaar fouten werden gemaakt.

Bij het op afstand verzamelen van de dmesg-logboeken, meestal binnen 180 seconden na het opstarten en gewoon een MariaDB-server starten en mysqlslap uitvoeren om de databaseserver te oefenen, zouden er fouten in het bestandssysteem optreden. Dit meerdere keren herhalen, het zou altijd binnen drie minuten gebeuren en de gerapporteerde NVMe-schijftemperatuur via de NVMe HWMON sysfs was altijd rond de 87 graden. Voor wat het waard is, de MP700 technische specificaties beschrijven een temperatuurbereik van-40C tot 85C.

Uit de verzamelde logs, althans onder Linux het lijkt erop dat de NVMe-controller uitvalt, wat op zijn beurt leidt tot fouten in het EXT4-bestandssysteem. Bijvoorbeeld:

[ 177.187278] nvme nvme0: controller is uitgevallen; zal resetten: CSTS=0xffffffff, PCI_STATUS=0xffff
[ 177.187283] nvme nvme0: Heeft uw apparaat een defecte energiebesparende modus ingeschakeld?
[ 177.187285] nvme nvme0: probeer”nvme_core.default_ps_max_latency_us=0 pcie_aspm=off”en rapporteer een bug
[ 177.235051] nvme 0000:19:00.0: kan de energiestatus niet wijzigen van D3cold naar D0, apparaat niet toegankelijk
[ 177.235151] nvme nvme0: apparaat uitschakelen na reset mislukt:-19
[ 177.251298] nvme0n1: gedetecteerde capaciteitsverandering van 3907029168 naar 0
[ 177.251308] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194516 startblok 125091905)
[ 177.251310] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 129128830
[ 177.251312] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio: 343: I/O-fout 10 schrijft naar inode 55193889 startblok 273991222)
[ 177.251316] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 124816449
[ 177.251317] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 2737157 66
[ 177.251322] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 29884642 startblok 129404287)
[ 177.251327] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_ biografie:343: I/O-fout 10 schrijft naar inode 55194516 startblok 125091902)
[ 177.251327] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 29884642 startblok 129404288)
[ 17 7.251329 ] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 124816446
[ 177.251331] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 30164735 startblok 129396193)
[ 177.2 51331 ] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194516 startblok 125091875)
[ 177.251332] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 129120737
[ 177.2 51333 ] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 124816419
[ 177.251334] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194516 startblok 125091852)
[ 177.2 51336 ] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 124816396
[ 177.251336] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 30164735 startblok 129396194)
[ 177.2 51338 ] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194516 startblok 125091849)
[ 177.251339] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 124816393
[ 177.2 51341 ] Buffer-I/O-fout op apparaat nvme0n1p2, logisch blok 124816371
[ 177.251343] Buffer-I/O-fout op apparaat nvme0n1p2, logisch blok 124816353
[ 177.251345] Journaal op apparaat nvme0n1p2-8 afgebroken.
[ 177.251353] EXT4-fs-fout (apparaat nvme0n1p2) in ext4_reserve_inode_write:5906: logboek is afgebroken
[ 177.251358] EXT4-fs-fout (apparaat nvme0n1p2): ext4_journal_check_start:83: comm kworker/u64:9: afgebroken gedetecteerd ted journaal
[ 177.251359] Buffer I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 220726066, verloren asynchrone pagina schrijven
[ 177.251360] Buffer I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 243826688, verloren synchronisatiepagina schrijven
[ 177.251362] EXT4-fs-fout (apparaat nvme0n1p2): ext4_dirty_inode:6110: inode #55194516: comm systemd-journal: mark_inode_dirty-fout
[ 177.251365] Buffer I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 1211472 23, verloren schrijven van asynchrone pagina’s
[ 177.251366] JBD2: I/O-fout bij het updaten van journaal-superblok voor nvme0n1p2-8.
[ 177.251367] EXT4-fs-fout (apparaat nvme0n1p2) in ext4_dirty_inode:6111: journaal is afgebroken
[ 177.251369] Buffer-I/O-fout op dev nvme0n1p2, logisch blok 121141967, verloren asynchrone pagina schrijven
[ 177.251 372 ] Buffer I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 121110852, verloren asynchrone pagina schrijven
[ 177.251373] EXT4-fs-fout (apparaat nvme0n1p2) in ext4_reserve_inode_write:5906: Journal is afgebroken
[ 177.251375] Buffer I/O fout op dev nvme0n1p2, logisch blok 121110544, verloren asynchrone pagina schrijven
[ 177.251376] EXT4-fs-fout (apparaat nvme0n1p2): ext4_dirty_inode:6110: inode #55193889: comm rs:main Q:Reg: mark_inode_dirty fout
[ EXT4-fs-fout (apparaat nvme0n1p2): ext4_journal_check_start:83: comm mariadbd: Detected aborted journal
[ 177.251377] Buffer I/O-fout op dev nvme0n1p2, logisch blok 121110529, verloren asynchrone pagina schrijven
[ 177.25 1378] Buffer-I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 177.251379] Buffer-I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 120587356, verloren asynchrone pagina schrijven
[ 177.251381] Buffer-I/O fout op dev nvme0n1p2, logisch blok 58, verloren asynchrone pagina schrijven
[ 177.251384] EXT4-fs-fout (apparaat nvme0n1p2) in ext4_dirty_inode:6111: Journal is afgebroken
[ 177.251386] EXT4-fs (nvme0n1p2): vorige I/O-fout naar superblok gedetecteerd
[ 177.251386] EXT4-fs-fout (apparaat nvme0n1p2): ext4_journal_check_start:83: comm systemd-journal: gedetecteerd afgebroken logboek
[ 177.251391] EXT4-fs-fout (apparaat nvme0n1p2): ext4_journal_check_start: 83: comm rs:main Q:Reg: gedetecteerd afgebroken journaal
[ 177.251399] EXT4-fs (nvme0n1p2): vorige I/O-fout naar superblok gedetecteerd
[ 177.251406] EXT4-fs (nvme0n1p2): I/O fout tijdens het schrijven van superblok
[ 177.251407] EXT4-fs (nvme0n1p2): Bestandssysteem alleen-lezen opnieuw koppelen
[ 177.251409] EXT4-fs (nvme0n1p2): kon ongeschreven extents niet converteren naar geschreven extents–potentieel gegevensverlies! (inode 29884642, fout-30)
[ 177.251413] EXT4-fs (nvme0n1p2): kon ongeschreven extents niet omzetten in geschreven extents–mogelijk gegevensverlies! (inode 30164735, fout-30)
[ 177.251415] EXT4-fs (nvme0n1p2): I/O-fout tijdens schrijven superblok
[ 177.251415] EXT4-fs (nvme0n1p2): I/O-fout tijdens schrijven superblok
[ 177.251417] EXT4-fs (nvme0n1p2): vorige I/O-fout naar superblok gedetecteerd
[ 177.251420] EXT4-fs (nvme0n1p2): I/O-fout tijdens het schrijven van superblok
[ 186.476141] EXT4-fs-fout ( apparaat nvme0n1p2): __ext4_find_entry:1663: inode #63307794: comm apport: leesmap lblock 0
[ 186.476151] buffer_io_error: 4 callbacks onderdrukt
[ 186.476152] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 186.476154] EXT4-fs: 2 callbacks onderdrukt
[ 186.476154] EXT4-fs (nvme0n1p2): I/O-fout tijdens het schrijven van superblok
[ 186.476170] EXT4-fs-fout (apparaat nvme0n1p2): __ext4_find_entry:1663: inode #63307794: comm apport: leesmap lblock 0
[ 186.476174] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 186.476174] EXT4-fs (nvme0n1p2 ): I/O-fout bij het schrijven van superblok
[ 186.476184] EXT4-fs-fout (apparaat nvme0n1p2): __ext4_find_entry:1663: inode #63307794: comm apport: leesmap lblock 0
[ 186.476187] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 186.476188] EXT4-fs (nvme0n1p2): I/O-fout tijdens het schrijven van superblok
[ 186.476197] EXT4-fs-fout (apparaat nvme0n1p2): __ext4_find_entry:1663: inode #63307794: comm apport: directory lezen lblock 0
[ 186.476199] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 186.476200] EXT4-fs (nvme0n1p2): I/O-fout tijdens het schrijven van superblok

De NVMe-schijf was bezig met MariaDB-taken, dus het had niet moeten proberen om naar een energiezuinige beheerstatus te gaan–afgezien van thermische throttling… Dus dat deed ik ook probeer de”nvme_core.default_ps_max_latency_us=0 pcie_aspm=off”kernelopties aanbevolen in de dmesg-uitvoer. maar uiteindelijk had geen van deze opties om PCI Express Active State Power Management (ASPM) uit te schakelen of de maximale latentie van NVMe te wijzigen enige hulp.

[ 164.581235] nvme nvme0: controller is uitgevallen; zal resetten: CSTS=0xffffffff, PCI_STATUS=0xffff
[ 164.581240] nvme nvme0: Heeft uw apparaat een defecte energiebesparende modus ingeschakeld?
[ 164.581241] nvme nvme0: probeer”nvme_core.default_ps_max_latency_us=0 pcie_aspm=off”en rapporteer een bug
[ 164.641482] nvme0n1: I/O Cmd(0x2) @ LBA 203495560, 32 blokken, I/O-fout (sct 0x3/sc 0x71)
[ 164.641490] I/O-fout, dev nvme0n1, sector 203495560 op 0x0:(READ) flags 0x80700 phys_seg 4 prio class 2
[ 164.669173] nvme 0000:19:00.0: Kan niet om de energiestatus te wijzigen van D3cold naar D0, apparaat ontoegankelijk vlaggen 0x0 phys_seg 1 prio klasse 2
[ 164.693195] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O fout 10 schrijven naar inode 55194123 startblok 386138112)
[ 164.693198] nvme0n1: gedetecteerde capaciteitsverandering van 3907029168 naar 0
[ 164.693200] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 385862656
[ 164.693211] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55 194123 startblok 129390649)
[ 164.693213] Buffer-I/O-fout op apparaat nvme0n1p2, logisch blok 129115193
[ 164.693213] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 2988 4650 startblok 273996343)
[ 164.693215] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 129115194
[ 164.693217] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 129115195
[ 164.693219] Buffer I/O fout op apparaat nvme0n1p2, logisch blok 129115196
[ 164.693220] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194123 startblok 129390653)
[ 164.693224] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijven naar inode 55194123 startblok 129390637)
[ 164.693226] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 129115181
[ 164.693228] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijven naar inode 55194123 startblok 129390598)
[ 164.693229] Buffer I/O-fout op apparaat nvme0n1p2, logisch blok 129115142
[ 164.693231] Buffer I/O fout op apparaat nvme0n1p2, logisch blok 129115143
[ 164.693232] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194123 startblok 129390595)
[ 164.693234] Buff e I/O fout op apparaat nvme0n1p2, logisch blok 129115139
[ 164.693235] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194123 startblok 129390578)
[ 164.693236] Buff e I/O fout op apparaat nvme0n1p2, logisch blok 129115122
[ 164.693238] EXT4-fs waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijft naar inode 55194123 startblok 129390566)
[ 164.693240] EXT4-fs-waarschuwing (apparaat nvme0n1p2): ext4_end_bio:343: I/O-fout 10 schrijven naar inode 55194123 startblok 129390563)
[ 164.693278] Buffer I/O-fout op dev nvme0n1p2, logisch blok 120619365, verloren asynchrone pagina schrijven
[ 164.69 3285 ] Buffer-I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 127926285, verloren asynchrone pagina schrijven
[ 164.693293] Buffer I/O-fout op ontwikkelaar nvme0n1p2, logisch blok 62, verloren asynchrone pagina schrijven
[ 164.693302] EXT4-fs fout (apparaat nvme0n1p2): ext4_check_bdev_write_error:223: comm mariadbd: fout bij asynchrone terugschrijven van metadata
[ 164.693323] Journal op apparaat nvme0n1p2-8 afbreken.
[164.693329] Ext4-FS-fout (apparaat NVME0N1P2) in ext4_dirty_inode: 6111: IO Failure
[164.693329] Buffer I/O-fout op Dev NVME0N1P2, Logical Block 243826688, Lost Sync Page Writing
[164.6933334] JBD2: I/O-fout bij het updaten van journaal-superblok voor nvme0n1p2-8.
[ 164.693334] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 164.693336] EXT4-fs (nvme0n1p2): I/O-fout tijdens het schrijven van superblok
[ 164.693340] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 164.693341] EXT4-fs (nvme0n1p2): I/O-fout tijdens het schrijven van superblok
[ 164.693353] EXT4-fs-fout (apparaat nvme0n1p2): ext4_journal_check_start:83: comm rs:main Q:Reg: gedetecteerd afgebroken journaal
[ 164.693364] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 164.693368] EXT4-fs (nvme0n1p2 ): I/O-fout tijdens het schrijven van superblok
[ 164.693369] EXT4-fs-fout (apparaat nvme0n1p2): ext4_journal_check_start:83: comm mariadbd: gedetecteerd afgebroken logboek
[ 164.693370] EXT4-fs (nvme0n1p2): opnieuw aangekoppeld bestandssysteem gelezen-only
[ 164.693378] Buffer I/O-fout op dev nvme0n1p2, logisch blok 0, verloren synchronisatiepagina schrijven
[ 164.693380] EXT4-fs (nvme0n1p2): I/O-fout tijdens het schrijven van superblok
[ 164.693455 ] EXT4-fs (nvme0n1p2): ext4_do_writepages: jbd2_start: 13262 pagina’s, ino 55194123; fout-30
[ 164.727715] Proces 10715(apport) heeft RLIMIT_CORE ingesteld op 1
[ 164.727716] Kern wordt afgebroken
[ 164.915069] Proces 10732(apport) heeft RLIMIT_CORE ingesteld op 1
[ 164.915071] Afbreken kern
[ 164.947259] Proces 10736(apport) heeft RLIMIT_CORE ingesteld op 1
[ 164.947261] Kern afgebroken
[ 164.981899] Proces 10747(apport) heeft RLIMIT_CORE ingesteld op 1

Ik heb Ik heb dit gedrag helemaal niet gezien bij de Inland TD510 PCIe 5.0 NVMe SSD, maar nogmaals, die schijf is standaard uitgerust met een actief koellichaam.

Na het corrigeren van de EXT4-bestandssysteemfouten en het aansluiten van een passieve NVMe-koelplaat op de MP700, heb ik 24 uur aan veeleisende I/O-benchmarks afgevuurd met MariaDB, PostgreSQL, FIO, ClickHouse en andere werklasten en het is probleemloos verlopen… Nog steeds behoorlijk aan het opwarmen in de lage tot midden jaren 80, maar nooit bestandssysteemfouten of NVMe-controllerrapporten in het kernellogboek. Het zal echter interessant zijn om te zien of dit gedrag ook onder Windows optreedt of dat een verschil in NVMe-stuurprogramma de situatie beïnvloedt.

In ieder geval raad ik aan om te wachten met upgraden naar PCIe 5.0 NVMe-opslag voor consumenten totdat er meer aantrekkelijke opties beschikbaar zijn die sneller en betrouwbaarder zijn en de prijzen beter beginnen te concurreren met PCIe 4.0 Prijzen voor NVMe-schijven. Als je nu als early adopter voor een PCIe 5.0 NVMe SSD kiest, raad ik je aan om er echt voor te zorgen dat je voldoende koeling hebt.

“Na zorgvuldige beoordeling van de recente rapporten van TechPowerUp en Phoronix, Phison wil graag het probleem erkennen dat is gevonden in de beoordelingen van producten die de nieuwe Phison PS5026-E26-controller gebruiken. We nemen deze kwestie serieus en doen er alles aan om het snel op te lossen.

Onze firmware-engineeringteams hebben het probleem al geïsoleerd en de nodige aanpassingen aan de thermische gascurve binnen enkele uren na het rapport. De nieuwe firmware moet echter het strikte validatieproces van Phison ondergaan voordat onze partners deze kunnen vrijgeven aan klanten. U kunt er zeker van zijn dat onze partners eindgebruikers op de hoogte stellen zodra de gevalideerde update beschikbaar is.

Het is belangrijk op te merken dat alle E26 SSD’s die zonder koellichaam worden geleverd, bedoeld zijn voor gebruik met een koellichaam. De meeste moederborden die worden geleverd met PCIe Gen5 ingeschakeld, bevatten ook koeling die speciaal is ontworpen voor Gen5 SSD’s. We bieden de’bare drive’-optie zodat klanten hun bestaande koelproducten kunnen gebruiken.

We willen onze toewijding benadrukken om onze klanten hoogwaardige producten en oplossingen te bieden en zullen hard blijven werken om ervoor te zorgen hun tevredenheid. Bedankt voor uw geduld en begrip tijdens dit proces.”

Dit zou dus moeten worden aangepakt met een firmware-update. Nu hoe goed deze firmware-updates werken voor Linux-gebruikers… Sommige leveranciers bieden in ieder geval afhandeling van opstartbare NVMe-firmware-updates, terwijl slechts enkelen een stap verder gaan met LVFS+Fwupd-ondersteuning om het een gemakkelijk proces te maken voor Linux-gebruikers.

Categories: IT Info