diff options
-rw-r--r-- | drivers/char/ipmi/ipmi_si_intf.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index abca98beac14..908521e36d81 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c | |||
@@ -916,7 +916,11 @@ static int smi_start_processing(void *send_info, | |||
916 | new_smi->last_timeout_jiffies = jiffies; | 916 | new_smi->last_timeout_jiffies = jiffies; |
917 | mod_timer(&new_smi->si_timer, jiffies + SI_TIMEOUT_JIFFIES); | 917 | mod_timer(&new_smi->si_timer, jiffies + SI_TIMEOUT_JIFFIES); |
918 | 918 | ||
919 | if (new_smi->si_type != SI_BT) { | 919 | /* |
920 | * The BT interface is efficient enough to not need a thread, | ||
921 | * and there is no need for a thread if we have interrupts. | ||
922 | */ | ||
923 | if ((new_smi->si_type != SI_BT) && (!new_smi->irq)) { | ||
920 | new_smi->thread = kthread_run(ipmi_thread, new_smi, | 924 | new_smi->thread = kthread_run(ipmi_thread, new_smi, |
921 | "kipmi%d", new_smi->intf_num); | 925 | "kipmi%d", new_smi->intf_num); |
922 | if (IS_ERR(new_smi->thread)) { | 926 | if (IS_ERR(new_smi->thread)) { |