[Skiboot] [PATCH 3/3] ipmi/wdt: Add ipmi watchdog timer support

Alistair Popple alistair at popple.id.au
Wed Jan 28 18:57:20 AEDT 2015


On Wed, 28 Jan 2015 16:37:02 Stewart Smith wrote:
> Alistair Popple <alistair at popple.id.au> writes:
> > Add support for an ipmi watchdog timer. This patch will cause the
> > system to be reset if opal_run_pollers() isn't called for more than
> > about 60 seconds.
> > 
> > The timer is reset just prior to running the payload. It is the
> > responsibility of the payload to ensure either opal_run_pollers() is
> > called frequently enough or to disable the watchdog timer by sending
> > appropriate ipmi commands.
> I'm a little uncomfortable in changing what is essentially an ABI here
> without having the payload explicitly enable the WDT.
> I worry about:
> - existing payloads
>   - will current payloads behave correctly? Do we have anything that
>     will currently make sure opal_run_pollers() is called frequently?
> - different ABI for payload kernel versus host kernel. If payload
>   (i.e. petitboot environment) disables the watchdog timer, then we'll
>   have different behavior if booted as payload versus as petitboot.
> - some concern about really low power modes and having to muck with
>   this.
> I think I'd prefer us to have to enable the watchdog explicitly...

I tend to agree, although at the time Jeremy and I couldn't come up with much 
of an alternative. The problem is that we would like the wdt to be activated 
before skiboot jumps to the payload so that if the payload fails for some 
reason we reboot.

A quick look at the FSP partition table format (FFS) that we use reveals that 
there are a number of user data fields (16) and some user flags for each 
partition. Maybe we could look at setting a bit in there to indicate the 
payload expects the wdt to be started?

> Ben, your thoughts?

More information about the Skiboot mailing list