现象:

     机器键盘接入,敲入无反应;机器无法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.

=================================问题解决=============================================================

 

 

posted on 2013-11-29 10:29  蚂蚁跳楼  阅读(6281)  评论(0编辑  收藏  举报