Re: [PATCH RFC] Watchdog: sbsa_gwdt: Enhance timeout range

From: Guenter Roeck
Date: Thu May 05 2016 - 12:43:18 EST

On Wed, May 04, 2016 at 11:17:29AM -0500, Timur Tabi wrote:
> Pratyush Anand wrote:
> >Its unique to SBSA because you have very little timeout here. kexec-tools
> >upstream does not have any mechanism to handle watchdog timeout. Lets say even
> >if we implement a framework there, the best it can do is to ping the watchdog
> >again.
> Ok, so it's more accurate to say that kexec has a minimum watchdog timeout
> requirement. What happens if the system admin sets the timeout to 5 seconds
> arbitrarily? The system will reset during kexec, no matter which hardware
> is used.
> This still sounds like a band-aid to me. We're just assuming that we need a
> timeout of at least 20 seconds to support kexec. Frankly, this still sounds
> like a problem the kexec developers needs to acknowledge and deal with.
> Still I'm okay with a patch that extends the timeout by programming WCV, but
> it has to be commented as a hack specifically to support kexec because the
> timeout might be too short. Then Wim can decide whether he supports such
> changes.
I don't even understand how kexec-tools is involved in the first place.
kexec-tools sounds like user space, which should execute _after_ the kernel
and its modules are loaded (assuming modules are loaded from initramfs).
If kexec-tools can somehow ping the watchdog (presumably by writing into
the HW directly), I don't understand why it doesn't simply load the watchdog
driver instead and let the watchdog core handle the heartbeats.

I am really missing something here. How can kexec-tools do anything before
the kernel is loaded ?