From: Auke Kok <auke-jan.h.kok@intel.com>
To: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>,
"Ronciak, John" <john.ronciak@intel.com>,
Auke Kok <auke-jan.h.kok@intel.com>,
NetDev <netdev@vger.kernel.org>,
Arjan van de Ven <arjan@linux.intel.com>
Subject: [RFC] irqbalance: Mark in-kernel irqbalance as obsolete, set to N by default
Date: Mon, 31 Jul 2006 10:35:26 -0700 [thread overview]
Message-ID: <44CE3F5E.4010305@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 931 bytes --]
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 <auke-jan.h.kok@intel.com>
---
Kconfig | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
---
[-- Attachment #2: mark_CONFIG_IRQBALANCE_as_obsolete.patch --]
[-- Type: text/x-patch, Size: 1013 bytes --]
diff --git a/arch/i386/Kconfig b/arch/i386/Kconfig
index daa75ce..5a40cfe 100644
--- a/arch/i386/Kconfig
+++ b/arch/i386/Kconfig
@@ -690,12 +690,19 @@ config EFI
kernel should continue to boot on existing non-EFI platforms.
config IRQBALANCE
- bool "Enable kernel irq balancing"
+ bool "Enable kernel irq balancing (obsolete)"
depends on SMP && X86_IO_APIC
- default y
+ default n
help
- The default yes will allow the kernel to do irq load balancing.
- Saying no will keep the kernel from doing irq load balancing.
+ The kernel irq balance will migrate interrupts between cpu's
+ constantly, which may help reduce load in some cases. It is not
+ beneficial for latency however, and a user-space daemon is available
+ that does a much better job.
+
+ The default no will keep the kernel from doing irq load balancing.
+ Say yes will allow the kernel to do irq load balancing.
+
+ If unsure, say N.
# turning this on wastes a bunch of space.
# Summit needs it only when NUMA is on
next reply other threads:[~2006-07-31 17:36 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-07-31 17:35 Auke Kok [this message]
2006-08-04 2:45 ` [RFC] irqbalance: Mark in-kernel irqbalance as obsolete, set to N by default Andrew Morton
2006-08-04 14:25 ` Auke Kok
2006-08-04 14:36 ` Arjan van de Ven
[not found] <6EJUl-4br-13@gated-at.bofh.it>
[not found] ` <6FXVd-1Gl-11@gated-at.bofh.it>
[not found] ` <6G9jL-1Yg-41@gated-at.bofh.it>
2006-08-04 21:48 ` Bodo Eggert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=44CE3F5E.4010305@intel.com \
--to=auke-jan.h.kok@intel.com \
--cc=arjan@linux.intel.com \
--cc=jesse.brandeburg@intel.com \
--cc=john.ronciak@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).