linux/drivers/watchdog
Anithra P Janakiraman 7fff4beb31 watchdog: softdog.c: enhancement to optionally invoke panic instead of reboot on timer expiry
This is needed for determining the reason for failure when a softdog
timeout occurs.

We use softdog to watch for critical application failures and at the
minimum a snapshot of the system would help to determine the cause.  In
such a scenario the application could fail but there isn't a softlockup as
such, hence the detect softlockup feature does not help.

The patch adds a module parameter soft_panic which when set to 1 causes
softdog to invoke panic instead of reboot when the softdog timer expires. 
By invoking panic we execute kdump if it is configured and the vmcore
generated by kdump should provide atleast a minimal idea of the reason for
failure.

Based on an original patch by Ken Sugawara <sugaken.r3@gmail.com>
Signed-off-by: Anithra P J <anithra@linux.vnet.ibm.com>
Reviewed-by: WANG Cong <xiyou.wangcong@gmail.com>
Acked-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2011-03-29 11:56:22 +00:00
..
acquirewdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
advantechwdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
adx_wdt.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
alim1535_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
alim7101_wdt.c watchdog: convert to DEFINE_PCI_DEVICE_TABLE 2011-03-15 16:02:22 +00:00
ar7_wdt.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
at32ap700x_wdt.c watchdog: at32ap700x_wdt: register misc device last in probe() function 2010-06-17 09:56:57 +00:00
at91rm9200_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
at91sam9_wdt.c
ath79_wdt.c watchdog: add driver for the Atheros AR71XX/AR724X/AR913X SoCs 2011-01-12 13:51:29 +00:00
bcm47xx_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
bcm63xx_wdt.c watchdog: bcm63xx_wdt: improve platform part. 2010-12-02 14:10:16 +00:00
bfin_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
booke_wdt.c watchdog: booke_wdt: clean up status messages 2011-03-15 16:02:39 +00:00
coh901327_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
cpu5wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
cpwd.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2011-03-17 17:09:29 -07:00
davinci_wdt.c watchdog: Convert release_resource to release_region/release_mem_region 2011-03-29 11:05:48 +00:00
ep93xx_wdt.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
eurotechwdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
f71808e_wdt.c watchdog: f71808e_wdt: Add Fintek F71869 watchdog 2011-01-12 10:23:04 +00:00
gef_wdt.c dt: Eliminate of_platform_{,un}register_driver 2011-02-28 13:22:46 -07:00
geodewdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
hpwdt.c watchdog: convert to DEFINE_PCI_DEVICE_TABLE 2011-03-15 16:02:22 +00:00
i6300esb.c watchdog: convert to DEFINE_PCI_DEVICE_TABLE 2011-03-15 16:02:22 +00:00
ib700wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
ibmasr.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
imx2_wdt.c watchdog: imx: use clk_get to acquire the watchdog clock 2010-12-14 09:54:19 +01:00
indydog.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
intel_scu_watchdog.c watchdog: Intel SCU Watchdog Timer Driver for Moorestown and Medfield platforms. 2011-03-15 16:02:06 +00:00
intel_scu_watchdog.h watchdog: Intel SCU Watchdog Timer Driver for Moorestown and Medfield platforms. 2011-03-15 16:02:06 +00:00
iop_wdt.c
it87_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
it8712f_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
iTCO_vendor_support.c iTCO_wdt: fix TCO V1 timeout values and limits 2010-05-25 09:05:56 +00:00
iTCO_vendor.h
iTCO_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
ixp4xx_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
ixp2000_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
jz4740_wdt.c watchdog: jz4740_wdt - fix magic character checking 2011-03-15 16:01:57 +00:00
Kconfig Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2011-03-17 17:09:29 -07:00
ks8695_wdt.c watchdog: ks8695_wdt: include mach/hardware.h instead of mach/timex.h. 2011-01-12 10:24:52 +00:00
m54xx_wdt.c m68knommu: Rename m548x_wdt.c to m54xx_wdt.c 2011-02-08 15:07:45 +10:00
machzwd.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
Makefile watchdog: Xen watchdog driver 2011-03-15 16:02:18 +00:00
max63xx_wdt.c watchdog: Convert release_resource to release_region/release_mem_region 2011-03-29 11:05:48 +00:00
mixcomwd.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
mpc8xxx_wdt.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2011-03-17 17:09:29 -07:00
mpcore_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
mtx-1_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
mv64x60_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
nuc900_wdt.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
nv_tco.c watchdog: fix nv_tco section mismatch 2011-03-29 11:06:04 +00:00
nv_tco.h watchdog: Add TCO support for nVidia chipsets 2011-01-12 13:51:23 +00:00
octeon-wdt-main.c WATCHDOG: octeon-wdt: Use I/O clock rate for timing calculations. 2010-10-29 19:08:42 +01:00
octeon-wdt-nmi.S WATCHDOG: Add watchdog driver for OCTEON SOCs 2010-08-05 13:26:22 +01:00
omap_wdt.c Watchdog: omap_wdt: add fine grain runtime-pm 2011-03-10 22:40:05 -07:00
omap_wdt.h watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
orion_wdt.c
pc87413_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
pcwd_pci.c watchdog: convert to DEFINE_PCI_DEVICE_TABLE 2011-03-15 16:02:22 +00:00
pcwd_usb.c USB: rename usb_buffer_alloc() and usb_buffer_free() users 2010-05-20 13:21:38 -07:00
pcwd.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
pika_wdt.c [WATCHDOG] powerpc: pika_wdt ident cannot be const 2010-04-03 22:22:20 +00:00
pnx833x_wdt.c watchdog: fix several MODULE_PARM_DESC strings 2010-05-25 09:03:52 +00:00
pnx4008_wdt.c watchdog: Convert release_resource to release_region/release_mem_region 2011-03-29 11:05:48 +00:00
rc32434_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
rdc321x_wdt.c rdc321x-southbridge: Use mfd_data instead of driver_data 2011-03-23 10:41:57 +01:00
riowd.c dt: Eliminate of_platform_{,un}register_driver 2011-02-28 13:22:46 -07:00
s3c2410_wdt.c watchdog: s3c2410_wdt.c: Convert release_resource to release_region/release_mem_region 2011-03-29 11:05:28 +00:00
sa1100_wdt.c
sb_wdog.c watchdog: sb_wdog: release irq and reboot notifier in error path and module_exit() 2010-09-15 18:43:47 +00:00
sbc60xxwdt.c
sbc7240_wdt.c
sbc8360.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
sbc_epx_c3.c Remove one to many n's in a word 2011-03-01 15:47:58 +01:00
sbc_fitpc2_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
sc520_wdt.c
sc1200wdt.c
sch311x_wdt.c watchdog: sch311x_wdt: fix printk condition 2011-03-14 10:40:21 +00:00
scx200_wdt.c
shwdt.c Merge branches 'sh/wdt', 'sh/pci-express-async' and 'common/serial-rework' into sh-latest 2011-01-26 18:24:18 +09:00
smsc37b787_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
softdog.c watchdog: softdog.c: enhancement to optionally invoke panic instead of reboot on timer expiry 2011-03-29 11:56:22 +00:00
sp805_wdt.c ARM: amba: make probe() functions take const id tables 2011-02-23 16:24:14 +00:00
sp5100_tco.c watchdog: sp5100_tco.c: Check if firmware has set correct value in tcobase. 2011-03-29 11:05:57 +00:00
sp5100_tco.h watchdog: Add support for sp5100 chipset TCO 2011-01-12 13:51:16 +00:00
stmp3xxx_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
ts72xx_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
twl4030_wdt.c watchdog: twl4030_wdt: Disable watchdog during probing 2010-05-25 09:05:46 +00:00
txx9wdt.c [WATCHDOG] change reboot_notifier to platform-shutdown method. 2010-03-07 10:30:59 +00:00
w83627hf_wdt.c watchdog: Fix reboot on W83627ehf chipset. 2011-01-12 10:23:52 +00:00
w83697hf_wdt.c
w83697ug_wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
w83877f_wdt.c
w83977f_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
wafer5823wdt.c
wd501p.h
wdrtas.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
wdt285.c
wdt977.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
wdt_pci.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
wdt.c watchdog: cleanup spaces before tabs 2011-03-15 16:02:27 +00:00
wm831x_wdt.c [WATCHDOG] watchdog_info constify 2010-03-07 10:30:57 +00:00
wm8350_wdt.c [PATCH 2/11] drivers/watchdog: Eliminate a NULL pointer dereference 2010-06-07 15:55:03 +00:00
xen_wdt.c watchdog: Xen watchdog driver 2011-03-15 16:02:18 +00:00