Content-type: text/html
Manpage of bmc-watchdog
bmc-watchdog
Section: System Commands (8)
Updated: 2008-12-01
Index
Return to Main Contents
NAME
bmc-watchdog - BMC watchdog timer daemon and control utility
SYNOPSIS
bmc-watchdog
command [OPTION...] [COMMAND_OPTIONS...]
DESCRIPTION
bmc-watchdog
controls a Baseboard Management Controller (BMC) watchdog timer. The
bmc-watchdog
tool typically executes as a cronjob or daemon to manage the watchdog
timer. A user must be root in order to run
bmc-watchdog.
BMC WATCHDOG DETAILS
A BMC watchdog timer is part of the Intelligent Platform Management
Interface (IPMI) specification and is only available to BMCs that are
compliant with IPMI. When a BMC watchdog timer is started, it begins
counting down to zero from some positive number of seconds. When the
timer hits zero, the timer will execute a pre-configured pre-timeout
interrupt and/or timeout action.
In order to stop the pre-timeout interrupt or timeout action from
being executed, the watchdog timer must be periodically reset back to
its initial beginning value.
The BMC watchdog timer automatically stops itself when the machine is
rebooted. Therefore, when a machine is brought up, the BMC watchdog
timer must be setup again before it can be used.
Typically, a BMC watchdog timer is used to automatically reset a
machine that has crashed. When the operating system first starts up,
the BMC timer is set to its initial countdown value. At periodic
intervals, when the operating system is functioning properly, the
watchdog timer can be reset by the OS or a userspace program. Thus,
the timer never counts down to zero. When the system crashes, the
timer cannot be reset by the OS or userspace program. Eventually, the
timer will countdown to zero and reset the machine.
See EXAMPLES below for examples of how bmc-watchdog is commonly used.
COMMANDS
The following commands are available to
bmc-watchdog.
- -s, --set
-
Set BMC Watchdog Configuration. BMC watchdog timer configuration
values can be set using the set command options listed below under SET
OPTIONS. If a particular configuration parameter is not specified on
the command line, the current configuration of that parameter will not
be changed.
- -g, --get
-
Get BMC Watchdog Configuration and State. The current
configuration and state is printed to standard output.
- -r, --reset
-
Reset BMC Watchdog Timer.
- -t, --start
-
Start BMC Watchdog Timer. Does nothing if the timer is currently
running. Identical to --reset command when the timer is stopped with
the exception of the start command options listed below under START
OPTIONS.
- -y
, --stop-
Stop BMC Watchdog Timer. Stops the current timer.
- -c, --clear
-
Clear BMC Watchdog Configuration. Clears all configuration values
for the watchdog timer, except for timer use, which is kept at
its current value.
- -d, --daemon
-
Run
bmc-watchdog
as a daemon. Configurable BMC watchdog timer options are listed below
under DAEMON OPTIONS. The configuration values are set once, then the
daemon will reset the timer at specified periodic intervals.
Everytime the BMC watchdog timer is reset, a log entry will be
generated in the bmc-watchdog log. The default log is stored at
/var/log/freeipmi/bmc-watchdog.log. The daemon can be stopped using
the --stop command, --clear command, or by setting the
stop_timer flag on the --set command.
GENERAL OPTIONS
The following options are general options for configuring IPMI
communication and executing general tool commands.
These options are generic and can be used by any command.
- -D, --driver-type=IPMIDRIVER
-
Specify the driver type to use instead of doing an auto selection.
The currently available inband drivers are KCS, SSIF, OPENIPMI, and
SUNBMC (SUNBMC is currently experimental).
- --disable-auto-probe
-
Do not probe in-band IPMI devices for default settings.
- --driver-address=DRIVER-ADDRESS
-
Specify the in-band driver address to be used instead of the probed
value. DRIVER-ADDRESS should be prefixed with "0x" for a hex
value and '0' for an octal value.
- --driver-device=DEVICE
-
Specify the in-band driver device path to be used instead of the
probed path.
- --register-spacing=REGISTER-SPACING
-
Specify the in-band driver register spacing instead of the
probed value.
- -f STRING, --logfile=FILE
-
Specify an alternate logfile from the default of
/var/log/freeipmi/bmc-watchdog.log.
- -n, --no-logging
-
Turns off all logging done by
bmc-watchdog.
- --config-file=FILE
-
Specify an alternate configuration file.
- -W, --workaround-flags=WORKAROUNDS
-
Specify workarounds to vendor compliance issues. Multiple workarounds
can be specified separated by commas. See WORKAROUNDS below for a
list of available workarounds.
- --debug
-
Turn on debugging.
- -?, --help
-
Output a help list and exit.
- --usage
-
Output a usage message and exit.
- -V, --version
-
Output the program version and exit.
SET OPTIONS
The following options can be used by the set command to set or clear
various BMC watchdog configuration parameters.
- -u INT, --timer-use=INT
-
Set timer use. The timer use value can be set to one of the
following: 1 = BIOS FRB2, 2 = BIOS POST, 3 = OS_LOAD, 4 = SMS OS, 5 =
OEM.
- -m INT, --stop-timer=INT
-
Set Stop Timer Flag. A flag value of 0 stops the current BMC watchdog
timer. A value of 1 doesn't turn off the current watchdog timer.
- -l INT, --log=INT
-
Set Log Flag. A flag value of 0 turns logging on. A value of 1 turns
logging off.
- -a INT, --timeout-action=INT
-
Set timeout action. The timeout action can be set to one of the
following: 0 = No action, 1 = Hard Reset, 2 = Power Down, 3 = Power
Cycle.
- -p INT, --pre-timeout-interrupt=INT
-
Set pre-timeout interrupt. The pre timeout interrupt can be set to
one of the following: 0 = None, 1 = SMI, 2 = NMI, 3 = Messaging
Interrupt.
- -z SECS, --pre-timeout-interval=SECONDS
-
Set pre-timeout interval in seconds.
- -F, --clear-bios-frb2
-
Clear BIOS FRB2 Timer Use Flag.
- -P, --clear-bios-post
-
Clear BIOS POST Timer Use Flag.
- -L, --clear-os-load
-
Clear OS Load Timer Use Flag.
- -S, --clear-sms-os
-
Clear SMS/OS Timer Use Flag.
- -O, --clear-oem
-
Clear OEM Timer Use Flag.
- -i SECS, --initial-countdown=SECONDS
-
Set initial countdown in seconds.
- -w, --start-after-set
-
Start timer after set command if timer is stopped. This is typically
used when
bmc-watchdog
is used as a cronjob. This can be used to automatically start the
timer after it has been set the first time.
- -x, --reset-after-set
-
Reset timer after set command if timer is running.
- -j, --start-if-stopped
-
Don't execute set command if timer is stopped, just start timer.
- -k, --reset-if-running
-
Don't execute set command if timer is running, just reset timer. This
is typically used when
bmc-watchdog
is used as a cronjob. This can be used to reset the timer after it
has been initially started.
START OPTIONS
The following options can be used by the start command.
- -G INT, --gratuitous-arp=INT
-
Suspend or don't suspend gratuitous ARPs while the BMC timer is
running. A flag value of 1 suspends gratuitous ARPs. A value of 0
will not suspend gratuitous ARPs. If this option is not specified,
gratuitous ARPs will not be suspended.
- -A INT, --arp-response=INT
-
Suspend or don't suspend BMC-generated ARP responses while the BMC
timer is running. A flag value of 1 suspends ARP responses. A value
of 0 will not suspend ARP responses. If this option is not specified,
ARP responses will not be suspended.
DAEMON OPTIONS
The following options can be used by the daemon command to set the
initial BMC watchdog configuration parameters.
- -u INT, --timer-use=INT
-
Set timer use. The timer use value can be set to one of the
following: 1 = BIOS FRB2, 2 = BIOS POST, 3 = OS_LOAD, 4 = SMS OS, 5 =
OEM.
- -l INT, --log=INT
-
Set Log Flag. A flag value of 0 turns logging on. A value of 1 turns
logging off.
- -a INT, --timeout-action=INT
-
Set timeout action. The timeout action can be set to one of the
following: 0 = No action, 1 = Hard Reset, 2 = Power Down, 3 = Power
Cycle.
- -p INT, --pre-timeout-interrupt=INT
-
Set pre-timeout interrupt. The pre timeout interrupt can be set to
one of the following: 0 = None, 1 = SMI, 2 = NMI, 3 = Messaging
Interrupt.
- -z SECS, --pre-timeout-interval=SECONDS
-
Set pre-timeout interval in seconds.
- -F, --clear-bios-frb2
-
Clear BIOS FRB2 Timer Use Flag.
- -P, --clear-bios-post
-
Clear BIOS POST Timer Use Flag.
- -L, --clear-os-load
-
Clear OS Load Timer Use Flag.
- -S, --clear-sms-os
-
Clear SMS/OS Timer Use Flag.
- -O, --clear-oem
-
Clear OEM Timer Use Flag.
- -i SECS, --initial-countdown=SECONDS
-
Set initial countdown in seconds.
- -G INT, --gratuitous-arp=INT
-
Suspend or don't suspend gratuitous ARPs while the BMC timer is
running. A flag value of 1 suspends gratuitous ARPs. A value of 0
will not suspend gratuitous ARPs. If this option is not specified,
gratuitous ARPs will not be suspended.
- -A INT, --arp-response=INT
-
Suspend or don't suspend BMC-generated ARP responses while the BMC
timer is running. A flag value of 1 suspends ARP responses. A value
of 0 will not suspend ARP responses. If this option is not specified,
ARP responses will not be suspended.
- -e, --reset-period
-
Time interval to wait before resetting timer. The default is 60
seconds.
ERRORS
Errors are logged to the bmc-watchdog log.
EXAMPLES
Setup a bmc-watchdog daemon that resets the machine after 15 minutes
(900 seconds) if the OS has crashed (see default bmc-watchdog rc
script /etc/init.d/bmc-watchdog for a more complete example):
bmc-watchdog -d -u 4 -p 0 -a 1 -i 900
KNOWN ISSUES
Bmc-watchdog
may fail to reset the watchdog timer if it is not scheduled properly.
It is always recommended that
bmc-watchdog
be executed with a high scheduling priority.
On some machines, the hardware based SMI Handler may disable a
processor after a watchdog timer timeout if the timer use is set to
something other than SMS/OS.
REPORTING BUGS
Report bugs to <freeipmi-users@gnu.org> or <freeipmi-devel@gnu.org>.
COPYRIGHT
Copyright (C) 2007-2008 Lawrence Livermore National Security, LLC.
Copyright (C) 2004-2007 The Regents of the University of California.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or (at
your option) any later version.
SEE ALSO
freeipmi(7)
http://www.gnu.org/software/freeipmi/
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- BMC WATCHDOG DETAILS
-
- COMMANDS
-
- GENERAL OPTIONS
-
- SET OPTIONS
-
- START OPTIONS
-
- DAEMON OPTIONS
-
- ERRORS
-
- EXAMPLES
-
- KNOWN ISSUES
-
- REPORTING BUGS
-
- COPYRIGHT
-
- SEE ALSO
-
This document was created by
man2html,
using the manual pages.
Time: 01:01:55 GMT, December 02, 2008