web-dev-qa-db-ja.com

サスペンド/レジュームでのDMA / do_IRQエラーが不正で、時々フリーズする

ラップトップ(今年購入したDell Latitude E6520)をサスペンドまたはレジュームするたびに、シャットダウン/起動の直前にコンソールに2つのフォームのメッセージが表示されます。

[  407.107610] ehci_hcd 0000:00:1d.0: dma_pool_free buffer-128, f6f18000/36f18000 (bad dma)

時折、次の形式のメッセージが表示されます。

[ 3753.979066] do_IRQ: 0.177 No irq handler for vector (irq -1)

ときどき、サスペンド時にCaps Lockボタンが点滅してマシンがフリーズした後、ハードシャットダウンを行う必要があります。これは、メッセージが表示される前に(しばらく前に)発生することはなく、do_IRQメッセージが表示されない限り発生しないと思います(確かではありませんが)。 [Caps Lockボタンの点滅に関するオーナーズマニュアルには何も記載されていません。スクロールロックも点滅する場合は、カーネルパニックの可能性がありますが、ラップトップにはスクロールロックライトがなく、コンソールにはカーネルパニックのメッセージはありません。]

これらの悪いDMA/do IRQメッセージは深刻ですか、それらとフリーズを調査/トラブルシューティングするにはどうすればよいですか?

編集:また、次のエラーメッセージを数回受け取りました。

[246943.023908] JBD: I/O error detected when updating journal superblock for sdb1.
[246943.023958] Buffer I/O error on device sdb1, logical block 0
[246943.023996] EXT3-fs (sdb1): I/O error while writing superblock

編集: http://Pastebin.com/ra7MTQEj でのdmesgの出力 http://Pastebin.com/i6jf0Md9 の/var/log/kern.logの内容

編集:いくつかのsmartctl(-a、-x、-log = error、-log = xerror)命令の出力は http://paste.ubuntu.com/1088488/ で利用可能です。

編集(2012年8月31日):dmesg|grep -i ehciの出力は http://paste.ubuntu.com/1177246/ で利用可能です。

編集:(3/9/2012):lshwの出力は http://paste.ubuntu.com/1183032 にあります

5
Steve Kroon

1.「悪いDMA」

ログに反映される唯一の一貫したエラーであるため、最初に「bad dma」エラーを処理しましょう。

  • これら、およびサスペンド/レジュームの問題は、内部[〜#〜] usb [〜#〜]3Gモデムによって引き起こされます。これはMACアドレスからEricssonですF3507g。
    • はい、あなたはその権利を読みます。すべてのUSBデバイスが外部にある必要はなく、目に見えるUSBポートのいずれかに接続する必要もありません。最新のラップトップは、内部USB "ハブ"からWireless/3Gカード、Bluetooth、ウェブカメラなどの内部周辺機器を実行します。

「bad dma」エラーが発生するたびに繰り返されるこのテルテールシーケンスに注意してください。

 [171783.085166] usb 2-1.6:USB切断、デバイス番号10 
 [171783.086623] ehci_hcd 0000:00:1d.0:dma_pool_free buffer-128、eafaa000/2afaa000(bad dma)
 [171783.087046] cdc_ncm 2-1.6:1.6:usb0: 'cdc_ncm' usb-0000:00の登録を解除します:1d.0-1.6、CDC NCM 
 [171783.092382] done。
 [171783.129959] ehci_hcd 0000:00:1d.0:dma_pool_free buffer-128、eb1aa000/2b1aa000(bad dma)
  • cdc_ncmモジュールが関係しています。これは 高速セルラーモデムへの低レベルUSBインターフェイス
  • この bug は、F3507g WWANカードが以前にUbuntu/Linuxで同様の問題を抱えていたことを示し、カーネルの更新により修正されました。
    • エラーはサスペンド/レジューム/フリーズのみに影響し、3Gカードの通常の動作には影響しません。
    • しかし、メインラインカーネル(またはQuantal 3.5カーネル)のいずれかを試して、違いが生じるかどうかを確認することをお勧めします。
    • もちろん、他のextreme代替手段は、BIOSで3Gカードを無効にするか、積極的に使用する場合は、別のブランド/モデルに置き換えることを検討することです。

2.「do_IRQ」および「sdb1」

コンテキストなしでこれらの分離された警告をデバッグすることは困難です(上記のように、これが重要な場合があります)。したがって、これらのエラーの一方または両方を含むkern.logを提供できるようになるまで、推測する必要があります。

  • 「do_IRQ」は、グラフィックカードなどのPCI-Expressバスの問題に起因することが最も多く、VIAチップセットが関係していることがよくあります。
    • それ以外の場合、このメッセージは安全に無視できます。
  • SMARTログは問題ないように見えますが、 "sdb1"エラーは、おそらく外部ドライブとのUSB通信の問題が原因です。

    • これらに関連するUSB​​エラーがさらに見つかった場合は、時々USBの非互換性を指摘し、心配しないでください。しかし、それらが単独で発生する場合は、ドライブの問題を示している可能性があります。より完全なログが役立ちます:)
  • 繰り返しになりますが、Quantal 3.5カーネルの1つを試してみて、特に「do_IRQ」に関して状況が変化するかどうかを確認することをお勧めします。

3. 3.5シリーズのQuantal Kernel(またはメインラインビルド)を試す

  • Ubuntu 12.10がリリースされると、そのカーネルは12.04で「バックポート」として利用可能になります(13.04および13.10でも同様です)。
  • 現在、 buntu-XチームPPA から「ベータ」カーネルを入手できます。
  • [〜#〜] but [〜#〜]このPPAには、アップグレードする必要のない追加のパッケージが多数含まれています。
  • そのため、 another PPA でバックポートされたカーネルのみを利用可能にしました。
  • インストールする:

     sudo apt-add-repository ppa:auanswers/lts-backported-kernels-prerelease 
     sudo apt-get update 
     sudo apt-get inst all linux-generic-lts-quantal 
    
  • 再起動すると、新しいカーネルで起動するはずです(uname -aで確認してください)。 Nvidia/AMDグラフィックスおよびBroadcomワイヤレスカードには問題がある可能性があります。 Grubメニューが表示されるまでShiftキーを押したままにして、「以前のLinuxバージョン」に入ることで、古い3.2シリーズカーネルをいつでも選択できます。

  • さらに最先端のカーネルについては、メインラインビルドのいずれかを試すことができます。詳細については、この質問と回答をご覧ください。

「メインライン」カーネルにアップグレードする必要がありますか?

4
ish

編集で追加したエラーは、破損したディスクセクターを参照しているようです。

Fsckまたはbadblocksを実行しようとしましたか?

次のように、Live CD環境からすべてを実行することをお勧めします。

  1. ライブUbuntu CD(またはその他のディストリビューション)を起動します
  2. Fdiskでディスクとパーティションをスキャンします

    Sudo fdisk -l
    
  3. 正しいディスクラベル(たとえば、/dev/sda1)を特定したら、これらの2つのコマンドを実行してください。 fsckコマンドの-cパラメーターは、不良ブロックの特定と分離を試みます

    Sudo e2fsck -cv /dev/sda1
    Sudo badblocks -sv /dev/sda
    
2
Andrea Olivato

「no irq for vector」問題については、カーネルブートオプションに「pci = nomsi」を追加してみてください。

1
Colin Ian King