现象:
机器键盘接入,敲入无反应;机器无法ping通,整台机器假死状态。
查看message的日志,日志为如下内容:
Aug :: TSMIS-CF kernel: ::19.0: eth0: Detected Hardware Unit Hang:
Aug :: TSMIS-CF kernel: TDH <>
Aug :: TSMIS-CF kernel: TDT <>
Aug :: TSMIS-CF kernel: next_to_use <>
Aug :: TSMIS-CF kernel: next_to_clean <>
Aug :: TSMIS-CF kernel: buffer_info[next_to_clean]:
Aug :: TSMIS-CF kernel: time_stamp <bcfbc>
Aug :: TSMIS-CF kernel: next_to_watch <>
Aug :: TSMIS-CF kernel: jiffies <c2565>
Aug :: TSMIS-CF kernel: next_to_watch.status <>
Aug :: TSMIS-CF kernel: MAC Status <>
Aug :: TSMIS-CF kernel: PHY Status <ffff>
Aug :: TSMIS-CF kernel: PHY 1000BASE-T Status <ffff>
Aug :: TSMIS-CF kernel: PHY Extended Status <ffff>
Aug :: TSMIS-CF kernel: PCI Status <>
Aug :: TSMIS-CF kernel: ::19.0: eth0: Detected Hardware Unit Hang:
Aug :: TSMIS-CF kernel: TDH <>
Aug :: TSMIS-CF kernel: TDT <>
Aug :: TSMIS-CF kernel: next_to_use <>
Aug :: TSMIS-CF kernel: next_to_clean <>
Aug :: TSMIS-CF kernel: buffer_info[next_to_clean]:
Aug :: TSMIS-CF kernel: time_stamp <bcfbc>
Aug :: TSMIS-CF kernel: next_to_watch <>
Aug :: TSMIS-CF kernel: jiffies <c2d35>
Aug :: TSMIS-CF kernel: next_to_watch.status <>
Aug :: TSMIS-CF kernel: MAC Status <>
Aug :: TSMIS-CF kernel: PHY Status <ffff>
Aug :: TSMIS-CF kernel: PHY 1000BASE-T Status <ffff>
Aug :: TSMIS-CF kernel: PHY Extended Status <ffff>
Aug :: TSMIS-CF kernel: PCI Status <>
Aug :: TSMIS-CF kernel: NETDEV WATCHDOG: eth0: transmit timed out
Aug :: TSMIS-CF kernel: e1000e: eth0 NIC Link is Up Mbps Half Duplex, Flow Control: None
Aug :: TSMIS-CF kernel: ::19.0: eth0: / speed: disabling TSO
问题原因:
英文解释:
Several adapters with the 82573 chipset display "TX unit hang" messages during normal operation with the e1000 driver. The issue appears both with TSO enabled and disabled, and is caused by a power management function that is enabled in the EEPROM. Early releases of the chipsets to vendors had the EEPROM bit that enabled the feature. After the issue was discovered newer adapters were released with the feature disabled in the EEPROM.(网址:http://serverfault.com/questions/193114/linux-e1000e-intel-networking-driver-problems-galore-where-do-i-start)
中文解释,掉电后数据不丢失的存储芯片存储电源管理继续有效。尤其在e1000的早期的网卡驱动中。
问题解决:
1、确认你的网卡版本和内核版本
[root@TSMIS-CF ~]# lspci|grep Eth
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 03)
02:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
[root@TSMIS-CF ~]# uname -a
Linux TSMIS-CF 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:54 EDT 2009 i686 i686 i386 GNU/Linux
2 、在 /boot/grub/menu.lst 文件中增加
kopt=pcie_aspm=off
解释:(大概意思就是禁止PCI的电源管理,内核的加载参数见文档:https://www.kernel.org/doc/Documentation/kernel-parameters.txt)
pcie_aspm= [PCIE] Forcibly enable or disable PCIe Active State Power
Management.
off Disable ASPM.
force Enable ASPM even on devices that claim not to support it.
WARNING: Forcing ASPM on may cause system lockups. =================================问题解决=============================================================