在Ubuntu Hardy中运行sky2

我有一个网卡:

02:00.0以太网控制器:Marvell Technology Group Ltd. 88E8050 PCI-E ASF千兆以太网控制器(18版)

看来这张卡是随机重置的。 这是一个dmesg:

  
 [751806.503694] sky2 eth1:hung mac 124:54 fifo 195(128:123)
 [751806.503702] sky2 eth1:检测到接收器挂起
 [751806.504154] sky2 eth1:禁用界面
 [751806.504440] sky2 eth1:启用界面
 [751809.712495] sky2 eth1:链路达1000 Mbps,全双工,stream量控制rx
 [970196.706605] sky2 eth1:hung mac 0:2 fifo 195(194:189)
 [970196.706611] sky2 eth1:检测到接收器挂起
 [970196.706913] sky2 eth1:禁用界面
 [970196.707227] sky2 eth1:启用界面
 [970199.917018] sky2 eth1:链路以1000 Mbps,全双工,stream量控制rx

看来networking驱动有问题,sky2; 但我还没有在其他论坛find任何答案。 你有什么build议吗? 我可以使用另一个驱动程序的卡? 这是一个已知的错误?

谢谢!

sky2司机多年来无可救药。

我相信现在大部分都很好,9.10版本应该可以正常工作。

有一个解决方法,可以在大约10个有sky2驱动程序的盒子上可靠地工作。 我所有的盒子都是基于CentOS5内核2.6.18(2017年是古老的)。 我发现在这些日志消息之后…

 sky2 eth1: receiver hang detected sky2 eth1: disabling interface sky2 eth1: enabling interface 

…司机似乎打破了校验和卸载硬件。 在一些实验中,我只能通过ifdown; ifup导致部分失败ifdown; ifup ifdown; ifup序列似乎导致校验和卸载仅打破了一些UDPstream量。

所以我只是禁用校验和卸载到硬件:

 ethtool --offload eth1 tx off 

警告 :对我来说, ethtool --show-offload eth1谎言,总是声称它是closures的。 我可以看到,设置这个onoff明显改变行为,但查询其状态谎言,总是performance为off

现在只是为了自动应用我把它放在/sbin/ifup-local

 #!/bin/bash DEVICE=$1 if [[ "$DEVICE" == "eth0" || "$DEVICE" == "eth1" ]] ; then ethtool --offload "$DEVICE" tx off fi 

但类似的东西也可以放在其他地方,比如debian上的/etc/network/if-up.d/eth