web-dev-qa-db-ja.com

DRDYERRおよびICRCABRTをスローするSATAドライブまたはチップセット

2つのsataポート(および使用されていない1つのATA-133)を備えたSD-VIA-1A2SPCIカードがあります。 2つの新しいWesternDigital Caviar Greenドライブ(WD10EARS 1TB)は、kern.logで繰り返しエラーをスローします(簡潔にするために日付/時刻/ホスト情報を削除しました)。

 [7.376475] ata2.00:例外Emask 0x12 SAct 0x0 SErr0x1000500アクション0x6 
 [7.376480] ata2.00:BMDMA stat 0x5 
 [7.376483] ata2:SError:{UnrecovData Proto TrStaTrns} 
 [7.376489] ata2.00:cmd c8/00:40:20:00:00/00:00:00:00:00/e0 tag 0 dma 32768 in 
 [ 7.376490] res 51/84:2f:20:00:00/00:00:00:00:00/e0 Emask 0x12(ATAバスエラー)
 [7.376493] ata2.00:ステータス:{DRDY ERR } 
 [7.376495] ata2.00:エラー:{ICRC ABRT} 
 [7.376504] ata2:リンクのハードリセット

私はUbuntu9.04-2.6.28-18-genericを使用していますが、Ubuntu 9.10、Fedora 12、OpenSUSE 11.2のライブCDを試しましたが、すべてさまざまな2.6.31カーネルを実行していますが、すべて同じエラーが発生しました。

これらのドライブとこのカードを他の2台のマシンでテストし、ドライブをマザーボードまたはアドインカードに直接接続する組み合わせに基づいて、VIAチップセットであると比較的確信しています。問題。オンボードVIA SATAチップセット(アドインカードなど)を搭載した別のコンピューターでも、ドライブがそのマザーボードに直接搭載されている場合に同じエラーが発生します。これを確認できました。ドライブは完全に良好で、ケーブルの交換、psuの過負荷がないなど、考えられるすべてのことを試しました。

このエラーは、ドライブでfdiskを1回または2回使用した後、2台のドライブで作成された新しいmdadm raid 1アレイを同期しようとすると、起動時に1回または2回発生します。

ここからどこへ行くべきかについて何か考えはありますか?ドライバー/カーネルに関しては?

誰かがDebian/Ubuntuでうまく機能する2つの内部SATAポートを備えたカードを推薦できるなら、私は新しいPCIアドインカードを購入することに完全にオープンです。

ありがとう!

4
Matt

VIAの代わりにPromiseチップセットとSiliconImageチップセットをお勧めします。現在、SiI-3124チップセットを搭載したPCIアダプターを使用していますが、問題はありません。

以前のIDE両方のメーカーのチップセットで良い経験をしましたが、PromiseSATAチップをテストする機会はまだありません。VIAチップ;私はたくさんの薄片状のVIAチップを扱ってきたので、可能な限りそれらを避けたいと思っています。

1
quack quixote

これは少し古いことは知っていますが、私が構築している新しいマシンでこの問題が発生し、問題はこれであるように見えました。これが私の元のエラーでした:

[  595.535123] ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6
[  595.535127] ata2.00: BMDMA stat 0x64
[  595.535132] ata2.00: failed command: WRITE DMA EXT
[  595.535140] ata2.00: cmd 35/00:00:08:3c:11/00:02:00:00:00/e0 tag 0 dma 262144 out
[  595.535145] ata2.00: status: { DRDY ERR }
[  595.535147] ata2.00: error: { ICRC ABRT }
[  595.535182] ata2: soft resetting link

2つの「メイン」(0/1)SATAポートをIDEモードまたはそのようなものに変えるために、BIOSオプションをオンにしましたが、どういうわけか、他のバス通信を台無しにしてしまいました。バス上の非SATAまたはセカンダリデバイス。ここでの説明は少し曖昧ですが、一部のMOBOでは、プライマリ/セカンダリであり、どのバスがどのバスに関連付けられているかを判断するのが困難です。

オプションを元に戻して、オンボードSATAの6つすべてがACHIになるようにすると、エラーはすぐに解消されたと言えます。一括実行のボニーまたはiozoneですぐに再現可能であった場合、変更により、これら2つのベンチマークプログラムはエラーなしですぐに実行され、2〜3時間ではなく30分で完了します。

1
M1TH

私は前の遅いポスターと同じような経験をしました。ミラー化されたRAID構成の2台のドライブが付属したDellOptiPlex9020があります。ミラーリングを解除して、2つのドライブを別々のドライブとして使用することにしました。そこで、RAIDコントローラーのセットアップを再構成して、2つのディスクを2つの非RAIDディスクとして表示しました。再起動すると、すべてが期待どおりでした。上記のエラーが発生し始めたことを除いて。しかし、それは非常にランダムで不安定でした。

ついに今夜、私はこのスレッドに出くわし、それを理解しました。 BIOSセットアップ(RAIDコントローラーセットアップとは完全に別)に入ると、インターフェイスが「ACHI」ではなく「RAID」に設定されていることがわかりました。 ACHIに切り替えて再起動するとすぐに、システムはこれまでになくはるかに高速に起動し、何よりもエラーは発生しませんでした。

はい!

0
Tom

BIOSでAHCIに変更しましたが、機能しませんでした。しかし、パーティションテーブルを確認したところ、GPTテーブルが壊れていると表示されました。

dan@zeus:~$ Sudo gdisk -l /dev/sda
[Sudo] password for dan: 
GPT fdisk (gdisk) version 0.8.4

Caution: invalid backup GPT header, but valid main header; regenerating
backup header from main header.

Warning! One or more CRCs don't match. You should repair the disk!

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: damaged

****************************************************************************
Caution: Found protective or hybrid MBR and corrupt GPT. Using GPT, but disk
verification and recovery are STRONGLY recommended.
****************************************************************************
Disk /dev/sda: 625140335 sectors, 298.1 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 4FF348B9-D041-49A6-AD98-18C15F055F2D
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 625142414
Partitions will be aligned on 8-sector boundaries
Total free space is 0 sectors (0 bytes)

Number  Start (sector)    End (sector)  Size       Code  Name
   1              34       625142414   298.1 GiB   0700  

次に、wと入力して、GPTテーブルを再度書き込みます。最後に、システムを再起動しました。

そして今、それは魅力のように機能しています!

0
Rizal Rahman

DRDY ERRメッセージは、実際には多くのシステムでカーネルのバグとして報告されているようです。これは、Ubuntuと、程度は少ないがDebianに関連しているようです。これは最近私に起こり始めたものなので、私はこれを調査しています。次のことをお勧めします(これには起動可能なCDが必要ですが、ディスクの問題のために必要になる場合があります。UbuntuデスクトップインストールCDは、何もインストールしなくても問題なく動作します)。

  1. /etc/modprobe.d/options.confに「optionslibatanoacpi = 1」を配置します
  2. 「e2fsck-f-c -v/dev/sda1」を実行しますが、/ dev/sda1をエラーの原因となっているパーティションに置き換えます。私の知る限り、e2fsckにはファイルシステムとのパーティションが必要なので、これはおそらくディスク全体では機能しません。ディスク全体で機能する場合でも、とにかくパーティションで実行する必要があります。あなた必要このための起動可能なCD。
  3. ファイル/boot/grub/menu.lstを編集し、「#kopt」で始まる行の行末に「noapic」を追加します。冒頭の#は重要であり、コメントのようには機能しません。 #を削除しないでください。
  4. これはディスクには影響しませんが、「splash」を「nosplash」に変更し、「#defoptions」で始まる行の/boot/grub/menu.lstから「quiet」という単語を削除すると、イメージがなくなります。 ubuntuを起動すると、代わりに、より詳細な出力が得られます。
  5. Ubuntuでは、/ boot/grub/menu.lst内の何かを変更した後、/ usr/sbin/update-grubを実行する必要があります
0
jetole