[RFC] irqbalance: Mark in-kernel irqbalance as obsolete, set to N by default

4 messages, 3 authors, 2006-08-04 · open the first message on its own page

[RFC] irqbalance: Mark in-kernel irqbalance as obsolete, set to N by default

From: Auke Kok <hidden>
Date: 2006-07-31 17:36:35

We've recently seen a number of user bug reports against e1000 that the 
in-kernel irqbalance code is detrimental to network latency. The algorithm 
keeps swapping irq's for NICs from cpu to cpu causing extremely high network 
latency (>1000ms). Another NIC driver (cxgb) already has severe warnings in 
their documentation file against using CONFIG_IRQBALANCE, but this is a 
general problem for all NIC drivers and other subsystems. This is especially 
so with cpufreq scaling where the system is slowed down and the migrations 
take much longer.

I suggest that the in-kernel irqbalance is phased out, by marking it OBSOLETE 
first and (perhaps) removing the code later. The userspace irqbalance daemon 
written by Arjan van de Ven does a wonderful job and should be used instead.

Signed-off-by: Auke Kok <redacted>

---

  Kconfig |   15 +++++++++++----
  1 file changed, 11 insertions(+), 4 deletions(-)
---

Re: [RFC] irqbalance: Mark in-kernel irqbalance as obsolete, set to N by default

From: Andrew Morton <hidden>
Date: 2006-08-04 02:45:53

On Mon, 31 Jul 2006 10:35:26 -0700
Auke Kok [off-list ref] wrote:
We've recently seen a number of user bug reports against e1000 that the 
in-kernel irqbalance code is detrimental to network latency. The algorithm 
keeps swapping irq's for NICs from cpu to cpu causing extremely high network 
latency (>1000ms).
What kernel versions?  Some IRQ balancer fixes went in shortly after 2.6.17.

It would be better if poss to fix the balancer rather than deprecating it.

Re: [RFC] irqbalance: Mark in-kernel irqbalance as obsolete, set to N by default

From: Auke Kok <hidden>
Date: 2006-08-04 14:26:34

Andrew Morton wrote:
On Mon, 31 Jul 2006 10:35:26 -0700
Auke Kok [off-list ref] wrote:
quoted
We've recently seen a number of user bug reports against e1000 that the 
in-kernel irqbalance code is detrimental to network latency. The algorithm 
keeps swapping irq's for NICs from cpu to cpu causing extremely high network 
latency (>1000ms).
What kernel versions?  Some IRQ balancer fixes went in shortly after 2.6.17.
user reports show 2.6.17.1 having the problem, I'm trying to get more details 
information, and will ask if 2.6.18rc3 or so does better for them.

Cheers,

Auke

Re: [RFC] irqbalance: Mark in-kernel irqbalance as obsolete, set to N by default

From: Arjan van de Ven <hidden>
Date: 2006-08-04 14:59:14

Andrew Morton wrote:
On Mon, 31 Jul 2006 10:35:26 -0700
Auke Kok [off-list ref] wrote:
quoted
We've recently seen a number of user bug reports against e1000 that the 
in-kernel irqbalance code is detrimental to network latency. The algorithm 
keeps swapping irq's for NICs from cpu to cpu causing extremely high network 
latency (>1000ms).
What kernel versions?  Some IRQ balancer fixes went in shortly after 2.6.17.

It would be better if poss to fix the balancer rather than deprecating it.
to some degree the in kernel balancer cannot really make the level of decisions that a
userspace balancer can make, at least not without making all kernel developers vomit ;)
(for example the userspace balancer looks in /proc/interrupts and parses that to see
which interrupts are used by networking versus which by storage etc, and has different
balancing policies for those and other classes; the networking policy basically comes down to
"pin the interrupt unless some higher networking interrupt really gets in the way")
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help