appearing again: kernel: eth0: too many iterations (6) in nv_nic_irq

Previous thread: [PATCH net-2.6.25] [IPV6] ADDRLABEL: Fix double free on label deletion. by YOSHIFUJI Hideaki / on Monday, January 28, 2008 - 5:02 am. (5 messages)

Next thread: [PACTH 1/1] drivers/net/usb: AX88178 100Mbps problem by Reinin Oyama on Monday, January 28, 2008 - 6:32 am. (2 messages)
From: Carlos Carvalho
Date: Monday, January 28, 2008 - 6:32 am

It seems that this problem with NVidia's nic comes up more and more...
From time to time we get this in the log:

Jan 27 14:43:12 duvel kernel: eth0: too many iterations (6) in nv_nic_irq.

We algo get

Jan 27 11:32:43 duvel kernel: KERNEL: assertion ((int)tcp_packets_in_flight(tp) >= 0) failed at net/ipv4/tcp_input.c (1274)

But at different moments, as shown above. Are they related? What's the
meaning of the "assertion failed" one?

The messages are more likely to appear when traffic is high
(>500Mb/s). This is with 2.6.22.16.

Any suggestions?
--

From: Stephen Hemminger
Date: Monday, January 28, 2008 - 9:06 am

On Mon, 28 Jan 2008 11:32:55 -0200

Use NAPI which is available as configuration option in this driver.

Increase the max_interrupt_work from the ridiculously low value of 5
to something more larger like 15, with module parameter in /etc/modprobe.d/options:

options forcedeth max_interrupt_work=15

Also, see if you motherboard supports MSI, if so add "msi=1" module parameter

-- 
Stephen Hemminger <stephen.hemminger@vyatta.com>
--

From: Carlos Carvalho
Date: Monday, January 28, 2008 - 6:52 pm

Stephen Hemminger (shemminger@linux-foundation.org) wrote on 28 January 2008 08:06:
 >On Mon, 28 Jan 2008 11:32:55 -0200
 >carlos@fisica.ufpr.br (Carlos Carvalho) wrote:
 >
 >> It seems that this problem with NVidia's nic comes up more and more...
 >> From time to time we get this in the log:
 >> 
 >> Jan 27 14:43:12 duvel kernel: eth0: too many iterations (6) in nv_nic_irq.
 >> 
 >> We algo get
 >> 
 >> Jan 27 11:32:43 duvel kernel: KERNEL: assertion ((int)tcp_packets_in_flight(tp) >= 0) failed at net/ipv4/tcp_input.c (1274)
 >> 
 >> But at different moments, as shown above. Are they related? What's the
 >> meaning of the "assertion failed" one?
 >> 
 >> The messages are more likely to appear when traffic is high
 >> (>500Mb/s). This is with 2.6.22.16.
 >> 
 >> Any suggestions?
 >
 >Use NAPI which is available as configuration option in this driver.

Already in use.

 >Increase the max_interrupt_work from the ridiculously low value of 5
 >to something more larger like 15, with module parameter in
 >/etc/modprobe.d/options:
 >
 >options forcedeth max_interrupt_work=15

Will try.

 >Also, see if you motherboard supports MSI, if so add "msi=1" module parameter

It does, I have this in the config:

CONFIG_ARCH_SUPPORTS_MSI=y
CONFIG_PCI_MSI=y

How can I set these options with the driver compiled in the kernel and
not as a module? I can change the max_interrupt_work in the source but
what about msi?

Any ideas about the assertion ((int)tcp_packets_in_flight...?
--

From: Andy Gospodarek
Date: Monday, January 28, 2008 - 6:07 pm

I've noticed that when running the latest forcedeth on an older base
kernel (2.6.18 in my case) that enable_irq and disable_irq don't quite
behave the same way with using MSI as they do with INTx.  2.6.24 works
great on the same hardware so something has changed between at leat
2.6.18 and now to make life better.  I've been meaning to look at those
calls and figure out if we can replace them with simple calls to disable
the hardware IRQs only, but haven't had a chance yet.

--

Previous thread: [PATCH net-2.6.25] [IPV6] ADDRLABEL: Fix double free on label deletion. by YOSHIFUJI Hideaki / on Monday, January 28, 2008 - 5:02 am. (5 messages)

Next thread: [PACTH 1/1] drivers/net/usb: AX88178 100Mbps problem by Reinin Oyama on Monday, January 28, 2008 - 6:32 am. (2 messages)