ユーザ用ツール

サイト用ツール


linux:linux-etc

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
linux:linux-etc [2013/08/21 11:04] – [PHPメモ] Wiki Editorlinux:linux-etc [2014/04/16 15:04] (現在) – [Intel ethernet controller 82574L] Wiki Editor
行 120: 行 120:
  
  
 +===== Intel ethernet controller e1000ドライバ =====
 +<del>Intelの82574Lチップを積んだPCIeボードで頻繁にエラーが出る問題の対処方法。</del>
 +チップの問題ではなく、e1000ドライバの問題かもしれない。
 +
 +以下の様なエラーが頻出して、その都度ネットワークが再起動してしまう。
 +
 +  Mar 24 15:00:18 [kernel] e1000e 0000:00:19.0 eth1: Detected Hardware Unit Hang:
 +  Mar 24 15:00:18 [kernel]   TDH                  <7e>
 +  Mar 24 15:00:18 [kernel]   TDT                  <8e>
 +  Mar 24 15:00:18 [kernel]   next_to_use          <8e>
 +  Mar 24 15:00:18 [kernel]   next_to_clean        <7e>
 +  Mar 24 15:00:18 [kernel] buffer_info[next_to_clean]:
 +  Mar 24 15:00:18 [kernel]   time_stamp           <1001afbef>
 +  Mar 24 15:00:18 [kernel]   next_to_watch        <7e>
 +  Mar 24 15:00:18 [kernel]   jiffies              <1001b04d4>
 +  Mar 24 15:00:18 [kernel]   next_to_watch.status <0>
 +  Mar 24 15:00:18 [kernel] MAC Status             <40080083>
 +  Mar 24 15:00:18 [kernel] PHY Status             <796d>
 +  Mar 24 15:00:18 [kernel] PHY 1000BASE-T Status  <3800>
 +  Mar 24 15:00:18 [kernel] PHY Extended Status    <3000>
 +  Mar 24 15:00:18 [kernel] PCI Status             <10>
 +  Mar 24 15:00:20 [kernel] e1000e 0000:00:19.0 eth1: Detected Hardware Unit Hang:
 +  Mar 24 15:00:20 [kernel]   TDH                  <7e>
 +  Mar 24 15:00:20 [kernel]   TDT                  <8e>
 +  Mar 24 15:00:20 [kernel]   next_to_use          <8e>
 +  Mar 24 15:00:20 [kernel]   next_to_clean        <7e>
 +  Mar 24 15:00:20 [kernel] buffer_info[next_to_clean]: 
 +  Mar 24 15:00:20 [kernel]   time_stamp           <1001afbef>
 +  Mar 24 15:00:20 [kernel]   next_to_watch        <7e>
 +  Mar 24 15:00:20 [kernel]   jiffies              <1001b0ca4>
 +  Mar 24 15:00:20 [kernel]   next_to_watch.status <0>
 +  Mar 24 15:00:20 [kernel] MAC Status             <40080083>
 +  Mar 24 15:00:20 [kernel] PHY Status             <796d>
 +  Mar 24 15:00:20 [kernel] PHY 1000BASE-T Status  <3800>
 +  Mar 24 15:00:20 [kernel] PHY Extended Status    <3000>
 +  Mar 24 15:00:20 [kernel] PCI Status             <10>
 +
 +以下の対策をして「収まった」ように見えたが、再発したので追記。
 +
 +以前の対策を元に戻して、今回はNICのTSOをオフにする。e1000ドライバでTSOが有効になっていると問題が生じることがあるらしい。TSOはパケットの一部の処理をCPUからNICに任せる機能で、高負荷時に問題がある場合があるという。
 +
 +  ethtool -K outside rx off tx off tso off
 +
 +再起動で元に戻るので、起動時にコマンドを実行するようにしておく。
 +
 +参考:[[http://extstrg.asabiya.net/pukiwiki/index.php?TSO%28TCP%20Segmentation%20Offload%29%A4%CE%CC%B5%B8%FA%B2%BD]]
 +----
 +カーネルに以下のパラメータを渡すと、とりあえず収まった(それ以上追求していない)。
 +
 +  "e1000e.IntMode=1,1 e1000e.InterruptThrottleRate=10000,10000"
 +
 +e1000eドライバに、何らかのパラメータを渡しているのだが、内容は未調査。
 +gentooでgrub2ならば、/etc/default/grubのGRUB_CMDLINE_LINUX_DEFAULTに追加し、grub.cfgを再構築する。
 +
 +ドライバをIntelから持ってくる必要はない。カーネルに同梱されているものでOKだった。
 +
 +参考:[[http://www.doxer.org/learn-linux/resolved-intel-e1000e-driver-bug-on-82574l-ethernet-controller-causing-network-blipping/]]
linux/linux-etc.1377050675.txt.bz2 · 最終更新: 2013/08/21 11:04 by Wiki Editor

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki