[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#709616: floods the network with pause packets



Control: tag -1 moreinfo

On Fri, May 24, 2013 at 02:40:59PM +0200, Stéphane Glondu wrote:
> Package: src:linux
> Version: 3.8.13-1
> Severity: important
> 
> Dear Maintainers,
> 
> With Linux 3.8, my computer starts (after some time) flooding its
> network interface with pause packets, effectively freezing it and
> other network-dependent computers connected to the same switch.

Switches should normally be configured to generate but not respond
to pause frames.  I don't know how unmanaged switches are typically
configured.  What do ethtool (no options and 'ethtool -a' report for
this device?

> When I disconnect it from the switch, the other computers resume their
> operations. But the faulty computer is still frozen.
> 
> When I connect directly my laptop to the computer, and run tcpdump on
> the laptop, I see:
> 
> > 12:09:03.242511 MPCP, Opcode Pause, length 46
> >                 0x0000:  0180 c200 0001 3cd9 2b79 81b8 8808 0001
> >                 0x0010:  0650 0000 0000 0000 0000 0000 0000 0000
> >                 0x0020:  0000 0000 0000 0000 0000 0000 0000 0000
> >                 0x0030:  0000 0000 0000 0000 0000 0000
> 
> A lot of them. Two per millisecond. Indefinitely. Meanwhile, the
> computer is unresponsive. Until I forcibly reboot it.

There seems to be a bug in your laptop's network driver, because pause
frames should not be passed to the kernel.  (Usually they are
discarded by the MAC.)

[...]
> 00:19.0 Ethernet controller [0200]: Intel Corporation 82579LM Gigabit Network Connection [8086:1502] (rev 04)
> 	Subsystem: Hewlett-Packard Company Device [103c:1494]
> 	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx+
> 	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
> 	Latency: 0
> 	Interrupt: pin A routed to IRQ 46
> 	Region 0: Memory at fe400000 (32-bit, non-prefetchable) [size=128K]
> 	Region 1: Memory at fe428000 (32-bit, non-prefetchable) [size=4K]
> 	Region 2: I/O ports at f080 [size=32]
> 	Capabilities: <access denied>
> 	Kernel driver in use: e1000e
[...]
 
I assume this is the device that's spewing pause frames?

Ben.

-- 
Ben Hutchings
We get into the habit of living before acquiring the habit of thinking.
                                                              - Albert Camus


Reply to: