momokuriの日記: CardBus NIC hang up 2
日記 by
momokuri
カードバスのNIC で IO-DATAの ものが、Linuxで通信ハングするんだわなぁ。
debug levelあげてログ拾っても、これと言った手がかりをつかめず。
TXで2Mbps程度でしなれてもなぁ。
いずれにせよ、tulipドライバのどっかがおかしいようなので、継続して調査します。
カードバスのNIC で IO-DATAの ものが、Linuxで通信ハングするんだわなぁ。
debug levelあげてログ拾っても、これと言った手がかりをつかめず。
TXで2Mbps程度でしなれてもなぁ。
いずれにせよ、tulipドライバのどっかがおかしいようなので、継続して調査します。
開いた括弧は必ず閉じる -- あるプログラマー
ちょっと手がかりをつかんだかな。 (スコア:1)
ドライバは、tulip_cb
pcmcia-cs 3.1.28 - 3.1.31 で確認中
使用チップは、ADMTek Centaur-C (AN985B)と思われ。
負荷が小さいとき、およびRX超過の場合は、問題ないが、
TX負荷が大きくなると、TX死亡。if down/upすれば復旧するのは
あたりまえ。
外から NICへむけて、pingを叩きつづけると(つまり、
rx_buf()な割り込みを定期的にかける)現象は発生しない。
おいおい、txな割り込み処理で、レジスタ設定わすれてねーか。
Re:ちょっと手がかりをつかんだかな。 (スコア:1)
チップのバグかもしれん。
きわめて後ろ向きのworkaround 開発!!
if-up eth0 した後、 ping -i 4 default_gateway >/dev/null &
する。
きわめて順調に動作。:-p