On Wed, Aug 31, 2016 at 02:52:40PM +0300, Vladimir Zapolskiy wrote: > The change adds a simple watchdog pretimeout framework infrastructure, > its purpose is to allow users to select a desired handling of watchdog > pretimeout events, which may be generated by a watchdog driver. > > The idea of adding this kind of a framework appeared after reviewing > several attempts to add hardcoded pretimeout event handling to some > watchdog driver and after a discussion with Guenter, see > https://lkml.org/lkml/2015/11/4/346 > > Watchdogs with WDIOF_PRETIMEOUT capability now may have three device > attributes in sysfs: read only pretimeout value attribute, read/write > pretimeout_governor attribute, read only pretimeout_available_governors > attribute. > > To throw a pretimeout event for further processing a watchdog driver > should call exported watchdog_notify_pretimeout(wdd) interface. > > In addition to the framework two simple watchdog pretimeout governors > are added for review: panic and noop. > > Changes from v4 to v5: > * fixed in source tree compilation issue, thanks to Wolfram > * replaced strncmp() with more suitable sysfs_streq() to > compare strings passed over sysfs (Wolfram) > * added Wolfram's implementation of pretimeout to softdog driver > * added watchdog pretimeout support to iMX2+ driver > * minor whitespace issue fixes reported by checkpatch Reviewed-by: Wolfram Sang Tested-by: Wolfram Sang So, I checked it on my Renesas M3 Salvator board and it worked as expected. I also looked over the code and it looks good to me. Note that I looked quite often over the code, so a "fresh" view might not hurt. Despite that, I think the code is generally good to go.