Dziwne niespójne odczyty z dużych plików na dyskach Samsung NVME

0

Mam nową maszynę z 2 dyskami Samsung M.2 (jeden to Samsung SSD 960 PRO 1 TB, a drugi to 512 GB). Płyta główna to ASRock X99 Taichi. Instalacja Ubuntu 17.04 z jądrem 4.10.0-37 przebiegła bez problemów. Podczas operacji zauważyłem dziwne błędy podczas odczytu dużych plików, które wyglądały, jakby były uszkodzone. Po wielokrotnym kopiowaniu plików ze zdalnego zauważyłem, że sumy kontrolne SHA1 i MD5 były całkowicie niespójne.

W rzeczywistości mogę odtworzyć zachowanie na obu dyskach, tworząc wystarczająco duży plik z losową zawartością za pośrednictwem

$ dd if=/dev/urandom iflag=fullblock of=output.dat  bs=1G  count=4
4+0 Datensätze ein
4+0 Datensätze aus
4294967296 Bytes (4.3 GB, 4.0 GiB) kopiert, 21.2289 s, 202 MB/s

Uruchomienie MD5 lub SHA1 na plikach powoduje niespójne skróty:

$ sha1sum output.dat 
c6a00127512741fa54555bee23eb05bbf5b09be1  output.dat
$ sha1sum output.dat
70c256358f8bc77a8c43c4cc0f03611cce4c6599  output.dat
$ md5sum output.dat 
37f5694f9fa6e9869a3214053b539207  output.dat
$ md5sum output.dat
134d060edb5c392597cd8c8ddf5e1b5a  output.dat

Dziwne jest to, że jeśli robię to z mniejszymi plikami (np. dd if=/dev/urandom iflag=fullblock of=output.dat bs=1G count=1), Nie widzę zachowania (skróty są spójne). Nie byłem jeszcze w stanie znaleźć określonego rozmiaru pliku, który wyzwalałby to zachowanie.

Zaktualizowałem już BIOS i sprawdziłem pamięć RAM - wszystko wydawało się w porządku. Nie jestem pewien, jak dalej zdiagnozować ten problem.

Brak danych wyjściowych w dmesg. Ponownie odtwarzam zachowanie z losowo generowanymi plikami tutaj, ale widzę to samo zachowanie w prawdziwych plikach, jeśli są wystarczająco duże. Dyski są sformatowane jako ext4 i ext3. Oba dyski pokazują zachowanie.

dudemeister
źródło
Wiem, że to stary błąd, ale czy masz discardopcje montowania? Jeśli tak, zamontuj je bez discardi spróbuj ponownie.
Thomas
Próbowałem tego, ale to nie pomogło :( Problem nadal pozostaje ten sam.
dudemeister
Zauważyliśmy, że problem nie występował, gdy zostawiliśmy tylko 1 moduł RAM i jeden z dysków SSD na płycie. Po ponownym włożeniu wszystkich 4 modułów RAM problem zniknął. Tylko wtedy, gdy działamy z 2 dyskami SSD NVME, ponownie widzimy problem. Bardzo dziwny. Myśleliśmy, że może to być zepsuta pamięć RAM, ale teraz system działa płynnie pod dużym obciążeniem ze wszystkimi modułami RAM i jednym z dysków SSD. Wydaje się to albo problemem z płytą główną, albo z jednym z dysków SSD, albo z subtelnym błędem sterownika linux, który występuje tylko w przypadku 2 różnych dysków SSD (znowu problem nie wystąpił pod Win10 ...).
dudemeister

Odpowiedzi:

0

Ok, problem wydaje się być związany z płytką ASRock X99 Taichi, która nie wydaje się poprawnie obsługiwać trybu czterokanałowego. Wyłączenie trybu czterokanałowego w systemie BIOS (lub podłączenie pamięci RAM w pierwszych 4 gniazdach) rozwiązało problem. Nie mogę nikomu polecić tej płyty głównej. Spowodowało to pewne dziwne, bardzo trudne do debugowania problemy.

dudemeister
źródło