Thread (41 messages) 41 messages, 5 authors, 2012-01-05

Re: [PATCH 1/1] via-rhine: Fix hanging with high CPU load on low-end broads.

From: David Miller <davem@davemloft.net>
Date: 2011-12-28 18:35:07
Also in: lkml

From: Stephen Hemminger <redacted>
Date: Wed, 28 Dec 2011 10:17:10 -0800
Looks like the hardware isn't really disabling interrupts correctly to support
NAPI. NAPI is supposed to be friendly and under load the work should move to
ksoftirqd. I suspect the IRQ management in this driver is borked.
There is some stupid spin loops in the IRQ handler that happen when looking for
Tx IRQ. I would run with debug set  and see if this is triggering.
This could be simply a side effect of the fact that via-rhine only does
RX work in it's NAPI handler.

If all the work (or at least both TX and RX) were moved into the NAPI
handler, it'd probably be easier to properly shut off all IRQs during
NAPI processing, and thus avoid the high CPU load in the IRQ handler
being seen here.

This "shut off only some interrupts" scheme is just asking for trouble.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help