首页 > 解决方案 > 网络接口检测到 Tx 单元在内存泄漏后挂起

问题描述

我的 Debian Linux 上的 Apache Tomcat 服务器发生了内存泄漏(这并不奇怪)。之后,eno2 网络接口出现了 SFTP 和 SSH 连接问题。SFTP 失败。SSH 连接速度非常慢,并且以随机的时间间隔崩溃/挂起/冻结。有时在密码之前,有时在密码之后。

eno1 网络接口上的 SSH 连接工作正常。

我查看dmesg并发现eno2: Detected Tx Unit Hang。见下文

[   11.354566] pps pps0: new PPS source ptp0
[   11.354630] ixgbe 0000:20:00.1: registered PHC device on eno2
[   11.495802] IPv6: ADDRCONF(NETDEV_UP): eno2: link is not ready
[   11.604761] pps pps1: new PPS source ptp1
[   11.604846] ixgbe 0000:20:00.0: registered PHC device on eno1
[   11.747007] IPv6: ADDRCONF(NETDEV_UP): eno1: link is not ready
[   13.382875] ixgbe 0000:20:00.1 eno2: NIC Link is Up 100 Mbps, Flow Control: RX/TX
[   13.384123] IPv6: ADDRCONF(NETDEV_CHANGE): eno2: link becomes ready
[   13.575680] ixgbe 0000:20:00.0 eno1: NIC Link is Up 100 Mbps, Flow Control: RX/TX
[   13.576944] IPv6: ADDRCONF(NETDEV_CHANGE): eno1: link becomes ready
[33566.239625] perf: interrupt took too long (2508 > 2500), lowering kernel.perf_event_max_sample_rate to 79500
[42370.080190] perf: interrupt took too long (3148 > 3135), lowering kernel.perf_event_max_sample_rate to 63500
[53584.175211] perf: interrupt took too long (3950 > 3935), lowering kernel.perf_event_max_sample_rate to 50500
[83116.604895] perf: interrupt took too long (4941 > 4937), lowering kernel.perf_event_max_sample_rate to 40250
[94298.197451] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.
[149698.446803] perf: interrupt took too long (6184 > 6176), lowering kernel.perf_event_max_sample_rate to 32250
[227382.499538] perf: interrupt took too long (7759 > 7730), lowering kernel.perf_event_max_sample_rate to 25750
[236983.473159] TCP: request_sock_TCP: Possible SYN flooding on port 443. Sending cookies.  Check SNMP counters.
[327439.263912] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.
[502774.659596] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.
[895350.161021] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.
[1521098.319236] TCP: request_sock_TCP: Possible SYN flooding on port 443. Sending cookies.  Check SNMP counters.
[1673700.653427] ixgbe 0000:20:00.1 eno2: Detected Tx Unit Hang 
                   Tx Queue             <2>
                   TDH, TDT             <1eb>, <1ec>
                   next_to_use          <1ec>
                   next_to_clean        <1eb>
                 tx_buffer_info[next_to_clean]
                   time_stamp           <118ef8000>
                   jiffies              <118ef8378>
[1673700.653543] ixgbe 0000:20:00.1 eno2: tx hang 1 detected on queue 2, resetting adapter
[1673700.653544] ixgbe 0000:20:00.1 eno2: initiating reset due to tx timeout
[1673700.653552] ixgbe 0000:20:00.1 eno2: Reset adapter
[1673700.688137] ixgbe 0000:20:00.1 eno2: TXDCTL.ENABLE for one or more queues not cleared within the polling period
[1673703.286255] ixgbe 0000:20:00.1 eno2: NIC Link is Up 100 Mbps, Flow Control: RX/TX
[1678849.962689] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.
[2311686.304277] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.
[2392483.835457] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.
[2909641.293973] TCP: request_sock_TCP: Possible SYN flooding on port 25. Sending cookies.  Check SNMP counters.

如何在不重新启动服务器的情况下解决此问题?我想在不中断 eno1 活动的情况下修复 eno2。

标签: linuxsshdebiannetwork-interface

解决方案


我跑ifdown eno2ifup eno2。之后工作。


推荐阅读