[lkml]   [2016]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [RFC PATCH 0/4] Clean up watchdog handlers
On Wed, Oct 26, 2016 at 09:02:19AM -0700, Babu Moger wrote:
> This is an attempt to cleanup watchdog handlers. Right now,
> kernel/watchdog.c implements both softlockup and hardlockup detectors.
> Softlockup code is generic. Hardlockup code is arch specific. Some
> architectures don't use hardlockup detectors. They use their own watchdog
> detectors. To make both these combination work, we have numerous #ifdefs
> in kernel/watchdog.c.
> We are trying here to make these handlers independent of each other.
> Also provide an interface for architectures to implement their own
> handlers. watchdog_nmi_enable and watchdog_nmi_disable will be defined
> as weak such that architectures can override its definitions.
> Thanks to Don Zickus for his suggestions.
> Here is the previous discussion

Hi Babu,

I finally got some cycles to poke at this today. Good work. A couple of
suggestions. For bisectability, I am thinking patch2 should be first and
patch1 and patch3 should be combined. Also watchdog_hld.c is going to need
up top:

#define pr_fmt(fmt) "NMI watchdog: " fmt

otherwise the error messages miss the header.

Though I don't think watchdog.c and watchdog_hld.c should have the same
header. A good solution isn't coming to me right now. I will try to run
some tests on this tomorrow.


> Babu Moger (4):
> watchdog: Remove hardlockup handler references
> watchdog: Move shared definitions to nmi.h
> watchdog: Move hardlockup detector in separate file
> sparc: Implement watchdog_nmi_enable and watchdog_nmi_disable
> arch/sparc/kernel/nmi.c | 44 ++++++++-
> include/linux/nmi.h | 19 ++++
> kernel/Makefile | 1 +
> kernel/watchdog.c | 276 ++---------------------------------------------
> kernel/watchdog_hld.c | 238 ++++++++++++++++++++++++++++++++++++++++
> 5 files changed, 312 insertions(+), 266 deletions(-)
> create mode 100644 kernel/watchdog_hld.c

 \ /
  Last update: 2016-10-31 22:02    [W:5.523 / U:0.016 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site