/* * Setup to call the timeout check routine every 30 seconds * This routine will check any timers that have been enabled. */ bool init_jcr_subsystem(void) { watchdog_t *wd = new_watchdog(); wd->one_shot = false; wd->interval = 30; /* FIXME: should be configurable somewhere, even if only with a #define */ wd->callback = jcr_timeout_check; register_watchdog(wd); return true; }
static btimer_t *btimer_start_common(uint32_t wait) { btimer_t *wid = (btimer_t *)malloc(sizeof(btimer_t)); wid->wd = new_watchdog(); if (wid->wd == NULL) { free(wid); return NULL; } wid->wd->data = wid; wid->killed = FALSE; return wid; }
void init_job_server(int max_workers) { int status; watchdog_t *wd; if ((status = jobq_init(&job_queue, max_workers, job_thread)) != 0) { berrno be; Emsg1(M_ABORT, 0, _("Could not init job queue: ERR=%s\n"), be.bstrerror(status)); } wd = new_watchdog(); wd->callback = job_monitor_watchdog; wd->destructor = job_monitor_destructor; wd->one_shot = false; wd->interval = 60; wd->data = new_control_jcr("*JobMonitor*", JT_SYSTEM); register_watchdog(wd); }
SaErrorT sim_discover_cpu_watchdogs(struct oh_handler_state * state, SaHpiResourceIdT resid) { SaErrorT rc; int i = 0; int j = 0; while (sim_cpu_watchdogs[i].watchdogrec.WatchdogNum != 0) { rc = new_watchdog(state, resid, &sim_cpu_watchdogs[i]); if (rc) { dbg("Error %d returned when adding cpu watchdog", rc); } else { j++; } i++; } trace("%d of %d cpu watchdogs injected", j, i); return 0; }