現象:
機器鍵盤接入,敲入無反應;機器無法ping通,整台機器假死狀態。
查看message的日志,日志為如下內容:
Aug 29 02:33:55 TSMIS-CF kernel: 0000:00:19.0: eth0: Detected Hardware Unit Hang: Aug 29 02:33:55 TSMIS-CF kernel: TDH <60> Aug 29 02:33:55 TSMIS-CF kernel: TDT <66> Aug 29 02:33:55 TSMIS-CF kernel: next_to_use <66> Aug 29 02:33:55 TSMIS-CF kernel: next_to_clean <60> Aug 29 02:33:55 TSMIS-CF kernel: buffer_info[next_to_clean]: Aug 29 02:33:55 TSMIS-CF kernel: time_stamp <bcfbc> Aug 29 02:33:55 TSMIS-CF kernel: next_to_watch <60> Aug 29 02:33:55 TSMIS-CF kernel: jiffies <c2565> Aug 29 02:33:55 TSMIS-CF kernel: next_to_watch.status <0> Aug 29 02:33:55 TSMIS-CF kernel: MAC Status <80000> Aug 29 02:33:55 TSMIS-CF kernel: PHY Status <ffff> Aug 29 02:33:55 TSMIS-CF kernel: PHY 1000BASE-T Status <ffff> Aug 29 02:33:55 TSMIS-CF kernel: PHY Extended Status <ffff> Aug 29 02:33:55 TSMIS-CF kernel: PCI Status <10> Aug 29 02:33:57 TSMIS-CF kernel: 0000:00:19.0: eth0: Detected Hardware Unit Hang: Aug 29 02:33:57 TSMIS-CF kernel: TDH <60> Aug 29 02:33:57 TSMIS-CF kernel: TDT <66> Aug 29 02:33:57 TSMIS-CF kernel: next_to_use <66> Aug 29 02:33:57 TSMIS-CF kernel: next_to_clean <60> Aug 29 02:33:57 TSMIS-CF kernel: buffer_info[next_to_clean]: Aug 29 02:33:57 TSMIS-CF kernel: time_stamp <bcfbc> Aug 29 02:33:57 TSMIS-CF kernel: next_to_watch <60> Aug 29 02:33:57 TSMIS-CF kernel: jiffies <c2d35> Aug 29 02:33:57 TSMIS-CF kernel: next_to_watch.status <0> Aug 29 02:33:57 TSMIS-CF kernel: MAC Status <80000> Aug 29 02:33:57 TSMIS-CF kernel: PHY Status <ffff> Aug 29 02:33:57 TSMIS-CF kernel: PHY 1000BASE-T Status <ffff> Aug 29 02:33:57 TSMIS-CF kernel: PHY Extended Status <ffff> Aug 29 02:33:57 TSMIS-CF kernel: PCI Status <10> Aug 29 02:33:58 TSMIS-CF kernel: NETDEV WATCHDOG: eth0: transmit timed out Aug 29 02:34:03 TSMIS-CF kernel: e1000e: eth0 NIC Link is Up 10 Mbps Half Duplex, Flow Control: None Aug 29 02:34:03 TSMIS-CF kernel: 0000:00:19.0: eth0: 10/100 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.
=================================問題解決=============================================================