[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20060929151053.GA17272@localdomain>
Date: Fri, 29 Sep 2006 10:10:54 -0500
From: Corey Minyard <minyard@....org>
To: Linux Kernel <linux-kernel@...r.kernel.org>,
Andrew Morton <akpm@...l.org>
Cc: openipmi-developer@...ts.sourceforge.net
Subject: [PATCH] Don't start kipmid if the IPMI driver can use interrupts
If the driver has interrupts available to it, there is really no
reason to have a kernel daemon push the IPMI state machine.
Note that I have experienced machines where the interrupts do
not work correctly. This was a long time ago and hopefully
things are better now. If some machines still have broken
interrupts, a blacklist will need to be added.
Signed-off-by: Corey Minyard <minyard@....org>
Index: linux-2.6.18/drivers/char/ipmi/ipmi_si_intf.c
===================================================================
--- linux-2.6.18.orig/drivers/char/ipmi/ipmi_si_intf.c
+++ linux-2.6.18/drivers/char/ipmi/ipmi_si_intf.c
@@ -916,7 +916,11 @@ static int smi_start_processing(void
new_smi->last_timeout_jiffies = jiffies;
mod_timer(&new_smi->si_timer, jiffies + SI_TIMEOUT_JIFFIES);
- if (new_smi->si_type != SI_BT) {
+ /*
+ * The BT interface is efficient enough to not need a thread,
+ * and there is no need for a thread if we have interrupts.
+ */
+ if ((new_smi->si_type != SI_BT) && (!new_smi->irq)) {
new_smi->thread = kthread_run(ipmi_thread, new_smi,
"kipmi%d", new_smi->intf_num);
if (IS_ERR(new_smi->thread)) {
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists