[Midnightbsd-cvs] src [7956] trunk/sys/dev/ipmi: dont stop IPMI watchdog timer if it is not running.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Wed Sep 14 18:46:15 EDT 2016
Revision: 7956
http://svnweb.midnightbsd.org/src/?rev=7956
Author: laffer1
Date: 2016-09-14 18:46:15 -0400 (Wed, 14 Sep 2016)
Log Message:
-----------
dont stop IPMI watchdog timer if it is not running.
Modified Paths:
--------------
trunk/sys/dev/ipmi/ipmi.c
trunk/sys/dev/ipmi/ipmivars.h
Modified: trunk/sys/dev/ipmi/ipmi.c
===================================================================
--- trunk/sys/dev/ipmi/ipmi.c 2016-09-14 22:45:05 UTC (rev 7955)
+++ trunk/sys/dev/ipmi/ipmi.c 2016-09-14 22:46:15 UTC (rev 7956)
@@ -652,11 +652,12 @@
if (timeout == 0)
timeout = 1;
e = ipmi_set_watchdog(sc, timeout);
- if (e == 0)
+ if (e == 0) {
*error = 0;
- else
+ sc->ipmi_watchdog_active = 1;
+ } else
(void)ipmi_set_watchdog(sc, 0);
- } else {
+ } else if (atomic_readandclear_int(&sc->ipmi_watchdog_active) != 0) {
e = ipmi_set_watchdog(sc, 0);
if (e != 0 && cmd == 0)
*error = EOPNOTSUPP;
Modified: trunk/sys/dev/ipmi/ipmivars.h
===================================================================
--- trunk/sys/dev/ipmi/ipmivars.h 2016-09-14 22:45:05 UTC (rev 7955)
+++ trunk/sys/dev/ipmi/ipmivars.h 2016-09-14 22:46:15 UTC (rev 7956)
@@ -105,6 +105,7 @@
struct cdev *ipmi_cdev;
TAILQ_HEAD(,ipmi_request) ipmi_pending_requests;
eventhandler_tag ipmi_watchdog_tag;
+ int ipmi_watchdog_active;
struct intr_config_hook ipmi_ich;
struct mtx ipmi_lock;
struct cv ipmi_request_added;
More information about the Midnightbsd-cvs
mailing list