netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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

             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).