Lines Matching refs:wp

159     WATCHDOG *wp;  in watchdog_event()  local
167 if ((wp = watchdog_curr) == 0) in watchdog_event()
170 msg_info("%s: %p %d", myname, (void *) wp, wp->trip_run); in watchdog_event()
171 if (++(wp->trip_run) < WATCHDOG_STEPS) { in watchdog_event()
180 alarm(wp->timeout); in watchdog_event()
182 if (wp->action) in watchdog_event()
183 wp->action(wp, wp->context); in watchdog_event()
200 WATCHDOG *wp; in watchdog_create() local
202 wp = (WATCHDOG *) mymalloc(sizeof(*wp)); in watchdog_create()
203 if ((wp->timeout = timeout / WATCHDOG_STEPS) == 0) in watchdog_create()
205 wp->action = action; in watchdog_create()
206 wp->context = context; in watchdog_create()
207 wp->saved_watchdog = watchdog_curr; in watchdog_create()
208 wp->saved_time = alarm(0); in watchdog_create()
216 if (sigaction(SIGALRM, &sig_action, &wp->saved_action) < 0) in watchdog_create()
219 msg_info("%s: %p %d", myname, (void *) wp, timeout); in watchdog_create()
231 return (watchdog_curr = wp); in watchdog_create()
236 void watchdog_destroy(WATCHDOG *wp) in watchdog_destroy() argument
240 watchdog_stop(wp); in watchdog_destroy()
241 watchdog_curr = wp->saved_watchdog; in watchdog_destroy()
242 if (sigaction(SIGALRM, &wp->saved_action, (struct sigaction *) 0) < 0) in watchdog_destroy()
244 if (wp->saved_time) in watchdog_destroy()
245 alarm(wp->saved_time); in watchdog_destroy()
246 myfree((void *) wp); in watchdog_destroy()
255 msg_info("%s: %p", myname, (void *) wp); in watchdog_destroy()
260 void watchdog_start(WATCHDOG *wp) in watchdog_start() argument
264 if (wp != watchdog_curr) in watchdog_start()
266 wp->trip_run = 0; in watchdog_start()
267 alarm(wp->timeout); in watchdog_start()
269 msg_info("%s: %p", myname, (void *) wp); in watchdog_start()
274 void watchdog_stop(WATCHDOG *wp) in watchdog_stop() argument
278 if (wp != watchdog_curr) in watchdog_stop()
282 msg_info("%s: %p", myname, (void *) wp); in watchdog_stop()
303 WATCHDOG *wp; in main() local
307 wp = watchdog_create(10, (WATCHDOG_FN) 0, (void *) 0); in main()
308 watchdog_start(wp); in main()
312 watchdog_destroy(wp); in main()