contrib/package: introduce hysteresis in watchdog
authorJo-Philipp Wich <jow@openwrt.org>
Mon, 4 May 2009 20:02:47 +0000 (20:02 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Mon, 4 May 2009 20:02:47 +0000 (20:02 +0000)
contrib/package/freifunk-watchdog/src/watchdog.c
contrib/package/freifunk-watchdog/src/watchdog.h

index 12d4bad..b431b6d 100644 (file)
@@ -318,16 +318,18 @@ static int do_daemon(void)
 
 
                /* Wifi restart required? */
-               if( restart_wifi > 0 )
+               if( restart_wifi >= HYSTERESIS )
                {
                        restart_wifi = 0;
+                       syslog(LOG_WARNING, "Restarting wireless");
                        EXEC(WIFI_ACTION);
                }
 
                /* Cron restart required? */
-               if( restart_cron > 0 )
+               if( restart_cron >= HYSTERESIS )
                {
                        restart_cron = 0;
+                       syslog(LOG_WARNING, "Restarting crond process");
                        EXEC(CRON_ACTION);      
                }
 
index d11396f..7de2421 100644 (file)
@@ -39,6 +39,9 @@
 /* Check interval */
 #define INTERVAL               30
 
+/* Hysteresis */
+#define HYSTERESIS             3
+
 /* How to call myself in the logs */
 #define SYSLOG_IDENT   "Freifunk Watchdog"