aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorCorey Minyard <cminyard@mvista.com>2015-09-05 18:58:13 -0400
committerCorey Minyard <cminyard@mvista.com>2015-11-15 22:08:26 -0500
commit314ef52fe67f8f03453b69169f954e2d04679bbd (patch)
tree21ad718a8c8156ea9fff34df169e27ca1f0ee8b6 /drivers/char
parent0cfec916e86d881e209de4b4ae9959a6271e6660 (diff)
ipmi: Stop the timer immediately if idle
The IPMI driver would let the final timeout just happen, but it could easily just stop the timer. If the timer stop fails that's ok, that should be rare. Signed-off-by: Corey Minyard <cminyard@mvista.com>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/ipmi/ipmi_si_intf.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c
index 20c3d7b97602..71b59cb6ae0c 100644
--- a/drivers/char/ipmi/ipmi_si_intf.c
+++ b/drivers/char/ipmi/ipmi_si_intf.c
@@ -935,6 +935,13 @@ static enum si_sm_result smi_event_handler(struct smi_info *smi_info,
935 } 935 }
936 goto restart; 936 goto restart;
937 } 937 }
938
939 if (si_sm_result == SI_SM_IDLE && smi_info->timer_running) {
940 /* Ok it if fails, the timer will just go off. */
941 if (del_timer(&smi_info->si_timer))
942 smi_info->timer_running = false;
943 }
944
938 out: 945 out:
939 return si_sm_result; 946 return si_sm_result;
940} 947}