Ansicht umschalten
Avatar von stefan822
  • stefan822

2 Beiträge seit 06.01.2023

Re: X600 btrfs scrub: uncorrectable errors

Hallo,

Ralph informierte mich ĂĽber diesen Thread. Ich bin der Typ der der den Bug-Report bei Debian in kernel.org verzapft hat.

Kurz zum Workaround (Details in Kommentar #4 auf https://bugzilla.kernel.org/show_bug.cgi?id=219609 ): Der Fehler verschwindet, wenn ich den in Version 6.3.7 eingeführten Patch "nvme-pci: clamp max_hw_sectors based on DMA optimized limitation" rückgängig mache. Soweit ich das verstehe, wird durch diesen Patch ein Pufferlimit auf einen als optimal empfundenen Wert reduziert. Wird dagegen das Pufferlimit verwendet, was die SSD meldet, funktioniert es.

Da es nur ein Limit ist, habe ich Zweifel, ob das wirklich Ursache oder nur eine Workaround ist.

Um das aufzuklären, mögen bitte diejenigen, bei denen der Fehler auftritt, testen, ob dieser Workaround überhaupt funktioniert. Dazu bitte die beiden Zeilen (Patch-Reversal und Debug-Info), so ändern wie in dem o.g. Link beschrieben. (Ich hatte die Diffs als Block-Quote, gesendet, weshalb diese etwas deformiert wurden. Am einfachsten die Zeilen manuell ändern.)

Kurze Anleitung zum Upstream-Kernel-Kompilieren:

1. Kernel-Quellen runterladen und entpacken
2. Eine `.config`-Datei der Distribution von einem möglichst ähnlichen Kernel der Distribution (i.d.R. `/boot/config-*`) klauen und ins Kernel-Verzeichnis kopieren
3. Von dort aus `make INSTALL_MOD_STRIP=1 dir-pgk`aufrufen. (Wahrscheinlich muss man noch Pakete installieren)
4. Kaffee trinken + Kuchen essen (beruhigt auch den Nerven, wenn man sich über den Händler geärgert hat, obwohl der dafür nichts kann)
5. Den Inhalt vom Unterverzeichnis `tar-install` ins root-Verzeichnis kopieren und Kernel installieren. (Bei mir reicht `update-initramfs -k <Version> -u`, allerdings habe ich noch die alten gummiboot-Scripte installiert, welche ĂĽber den Jordan gingen, als daraus systemd-boot wurde -- systemd halt.)
6. Testen und Ausgabe von `grep nvme /var/log/kern.log`mitteilen

Es wäre nett, wenn diejenigen, bei denen der Fehler nicht auftritt, bitte die Kernel-Version (und Distribution) und den Output folgender Befehle mitteilen würden

1. `LANG=C /usr/sbin/nvme id-ctrl /dev/nvme0` (der mdts-Wert ist interessant)
2. `LANG=C /usr/sbin/nvme show-regs -H /dev/nvme0`(die Page-Sizes sind interessant)

Ursache für diesen Fehler (und vielleicht noch mehr) ist wohl, dass das Mainboard/CPU zu wenig getestet wurden (CPU arbeitet im SoC-Modus). Das ist weder Aufgabe des Händlers noch von Journalisten. Dafür sind Asrock und AMD verantwortlich (Asrock entwickelt diese Mainbaords nicht ohne AMD-Support).

Da hilft es nur, öffentlichen Druck auf den Asrock und AMD auszuüben.

Da Christian Hirsch mitliest, rege ich in diesem Sinne einen Update-Artikel ein einer der kommenden c't-Ausgaben an (habe des System wegen eines Artikels gekauft).

MfGruĂź Stefan

Bewerten
- +
Ansicht umschalten