[PATCH v4 0/5] Improve watchdog config for arch watchdogs

Nicholas Piggin npiggin at gmail.com
Fri Jun 16 16:57:10 AEST 2017


This is the latest series to make the hardlockup watchdog more
easily replaceable by arch code. The last patch provides some
justification for why we want to do this (existing sparc watchdog
is another that could benefit).

Since last time, we tidied up the Kconfig approach so it was not
so jumbled -- Thanks Don and Babu for help and suggestions there.

Since last posting the powerpc patch, I re-added the soft-NMI
watchdog, but have it using the emergency stack so we can always
avoid the process stacks when perf interrupts are soft-masked.

I'm not sure of the best strategy to merge this. The powerpc
watchdog is too much to carry anywhere but powerpc tree now, and
watchdog patches seem to go via Andrew...

Thanks,
Nick

Nicholas Piggin (5):
  watchdog: remove unused declaration
  watchdog: introduce arch_touch_nmi_watchdog()
  watchdog: split up config options
  watchdog: provide watchdog_reconfigure() for arch watchdogs
  powerpc/64s: implement arch-specific hardlockup watchdog

 arch/Kconfig                               |  23 ++
 arch/blackfin/include/asm/nmi.h            |   2 +
 arch/blackfin/kernel/nmi.c                 |   2 +-
 arch/mn10300/include/asm/nmi.h             |   2 +
 arch/mn10300/kernel/mn10300-watchdog-low.S |   8 +-
 arch/mn10300/kernel/mn10300-watchdog.c     |   2 +-
 arch/powerpc/Kconfig                       |   6 +-
 arch/powerpc/include/asm/nmi.h             |  11 +
 arch/powerpc/include/asm/smp.h             |   2 +
 arch/powerpc/kernel/Makefile               |   1 +
 arch/powerpc/kernel/exceptions-64s.S       |  30 ++-
 arch/powerpc/kernel/kvm.c                  |   7 +
 arch/powerpc/kernel/setup_64.c             |  19 --
 arch/powerpc/kernel/smp.c                  |  20 +-
 arch/powerpc/kernel/watchdog.c             | 388 +++++++++++++++++++++++++++++
 arch/sparc/include/asm/nmi.h               |   1 +
 arch/sparc/kernel/nmi.c                    |   6 +-
 arch/x86/Kconfig                           |   1 +
 arch/x86/kernel/apic/hw_nmi.c              |   2 +-
 include/linux/nmi.h                        |  57 +++--
 kernel/Makefile                            |   2 +-
 kernel/sysctl.c                            |  31 ++-
 kernel/watchdog.c                          | 268 +++++++++++++-------
 kernel/watchdog_hld.c                      |  37 +--
 lib/Kconfig.debug                          |  45 ++--
 25 files changed, 763 insertions(+), 210 deletions(-)
 create mode 100644 arch/powerpc/kernel/watchdog.c

-- 
2.11.0



More information about the Linuxppc-dev mailing list