Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
WATCHDOG(9)		   Kernel Developer's Manual		   WATCHDOG(9)

NAME
       watchdog	-- software and	hardware watchdog facility

SYNOPSIS
       #include	<sys/watchdog.h>

       void
       watchdog_fn(void	*private, u_int	cmd, int *error);

       EVENTHANDLER_REGISTER(watchdog_list, watchdog_fn, private, 0);

       EVENTHANDLER_DEREGISTER(watchdog_list, eventhandler_tag);

DESCRIPTION
       To implement a watchdog in software or hardware,	only a single function
       needs to	be written and registered on the global	watchdog_list.

       The function must examine the cmd argument and act on it	as follows:

       If  cmd	is  zero, the watchdog must be disabled	and the	error argument
       left untouched.	If the watchdog	cannot be disabled, the	error argument
       must be set to EOPNOTSUPP.

       Else the	watchdog should	be reset and configured	to a timeout of	(1  <<
       (cmd  &	WD_INTERVAL))  nanoseconds or larger and the error argument be
       set to zero to signal arming of a watchdog.

       If the watchdog cannot be configured to the proposed timeout,  it  must
       be disabled and the error argument left as is (to avoid hiding the arm-
       ing of another watchdog).

       There  is no specification of what the watchdog should do when it times
       out, but	a hardware reset or similar "drastic but certain" behaviour is
       recommended.

SEE ALSO
       watchdog(4)

AUTHORS
       The watchdog facility and this manual  page  was	 written  Poul-Henning
       Kamp <phk@FreeBSD.org>.

FreeBSD	13.2		       February	28, 2004		   WATCHDOG(9)

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | AUTHORS

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=watchdog&sektion=9&manpath=FreeBSD+14.0-RELEASE+and+Ports>

home | help