ディスクの問題: irq_stat 0x20000000、ホスト バス エラー

ディスクの問題: irq_stat 0x20000000、ホスト バス エラー

NVMe ディスクから SATA 7200rpm HDD ディスクに大きなファイル (50 GB 以上) をコピーすると、完全にパッチが適用された Ubuntu 20.04 のログに次のエラーが表示されます。

Aug 08 00:45:59 host kernel: ata6.00: exception Emask 0x20 SAct 0x0 SErr 0x0 action 0x6 frozen
Aug 08 00:45:59 host kernel: ata6.00: irq_stat 0x20000000, host bus error
Aug 08 00:45:59 host kernel: ata6.00: failed command: WRITE DMA EXT
Aug 08 00:45:59 host kernel: ata6.00: cmd 35/00:08:30:a2:e0/00:00:e8:00:00/e0 tag 23 dma 4096 out
                                    res 50/00:00:00:00:00/00:00:00:00:00/00 Emask 0x20 (host bus error)
Aug 08 00:45:59 host kernel: ata6.00: status: { DRDY }
Aug 08 00:45:59 host kernel: ata6: hard resetting link
Aug 08 00:46:00 host kernel: ata6: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
Aug 08 00:46:00 host kernel: ata6.00: configured for UDMA/133
Aug 08 00:46:00 host kernel: ata6: EH complete

ata6.00書き込み先のディスクです。
この問題は断続的に発生します。24 時間表示されないこともあれば、1 時間に数回表示されることもあります。ディスクは回復することがよくありますが、ファイルシステムが破損して、アンマウント、修復 (可能な場合)、再マウントが必要になる場合もあります。

私が試したこと:

  1. 3 つの異なるブランドの HDD を試しました。すべて同じ問題が発生します。
  2. ハードウェアの問題を疑いました。マザーボードと SATA ケーブルを交換しました。どれも効果はありませんでした。
  3. 同じ構成の別のサーバーがあります。そこでは問題は発生しません。ワークロードは同じです。
  4. まったく異なる構成 (Intel 対 AMD) の別のサーバーもあります。問題はそこで発生します。ワークロードは同じです。
  5. 経由で NCQ を無効にしましたecho 1 > /sys/block/sda/device/queue_depth。役に立ちませんでした。

アイデアが尽きました...
これらはすべてデータ センター グレードのコンポーネントです。私が実行した手順を考慮すると、ハードウェアの製造上の欠陥ではないと思います。
これはソフトウェア/OS/BIOS に関連している可能性がありますか?
他に試すべきアイデアはありますか?

答え1

おそらくこれは動作温度の問題でしょうか? ディスクが継続的に使用されるようになると、その物理的な位置と熱の増減率が高くなりすぎて、動作が不安定になるのでしょうか?

あなたのような新しいカーネルでは、ドライブの温度を次のパスの sysfs に配置できます。

/sys/class/hwmon/*

drivetempモジュールが でロードされていることを確認してくださいmodprobe drivetemp

ここでファイルを監視し、大きなファイルのコピーを再度開始することを検討することもできます。カーネルのドキュメントこここれらのファイルをどのように解釈するかを示します。

これらには、動作時の最小/最大温度などの有用な値が含まれており、一部のドライバーは、障害時にトリガーされるチップ依存のアラームであるアラームインジケーターも提供できます。

答え2

Ubuntu 21.04 にアップグレードすることで解決したようです。ただし、理由はわかりません。サーバーは現在、ATA の問題もなく安定して動作しています。

関連情報