OpenCloudOS-Kernel/drivers/misc/mei
Tomas Winkler d692170037 watchdog: mei: avoid oops in watchdog unregister code path
With commit c7d3df3 "mei: use internal watchdog device registration
tracking" will crash the kernel on shutdown path on systems
where ME watchdog is not present.
Since the watchdog was never initialized in such case
the WDOG_UNREGISTERED bit is never set and the system
crashes on access to uninitialized variables down the path.

To solve the issue we query for NULL on watchdog driver driver_data
to check whether the device is registered. This is handled in the
driver and doesn't depend on watchdog core internals.

Cc: Borislav Petkov <bp@alien8.de>
Cc: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Signed-off-by: Jerry Snitselaar <jerry.snitselaar@oracle.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
2012-12-19 22:25:11 +01:00
..
Kconfig char/misc: remove CONFIG_EXPERIMENTAL dependencies 2012-09-18 16:14:53 +01:00
Makefile mei: extract AMTHI functions into the amthif.c file 2012-11-01 12:31:19 -07:00
amthif.c mei: streamline amthif write complete function 2012-11-21 12:43:58 -08:00
hw.h mei: use the same bus msg for connect and disconnect request 2012-11-15 15:34:19 -08:00
init.c mei: Simplify the ME client enumeration code 2012-11-21 12:43:58 -08:00
interface.c mei: compact code for mei bus message creation 2012-11-21 12:43:57 -08:00
interface.h mei: wd: decouple and revamp watchdog state machine 2012-08-16 09:51:02 -07:00
interrupt.c mei: Simplify the ME client enumeration code 2012-11-21 12:43:58 -08:00
iorw.c mei: use link and unlink terms for connecting ME and HOST client 2012-11-15 15:34:19 -08:00
main.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
mei_dev.h mei: Simplify the ME client enumeration code 2012-11-21 12:43:58 -08:00
wd.c watchdog: mei: avoid oops in watchdog unregister code path 2012-12-19 22:25:11 +01:00