On 02/23/11 12:43, Wim Van Sebroeck wrote:
commit afe3de93859443b575407f39a2e655956c02e088 Author: Wim Van Sebroeck<wim@xxxxxxxxx> Date: Sun Jul 18 10:39:00 2010 +0000 watchdog: WatchDog Timer Driver Core - Part 6 Since we don't want that a driver module can be removed while the watchdog timer is still active, we lock the driver module (by incremeting the reference counter). After a clean close of the watchdog driver we unlock the driver module. If /dev/watchdog is closed uncleanly (and the watchdog is still active) then we do not unlock the driver module, but keep it, so that next time /dev/watchdog get's opened we can continue triggering the watchdog. Signed-off-by: Alan Cox<alan@xxxxxxxxxxxxxxxxxxx> Signed-off-by: Wim Van Sebroeck<wim@xxxxxxxxx>
*snip*
diff --git a/drivers/watchdog/core/watchdog_core.c b/drivers/watchdog/core/watchdog_core.c index 52bc520..d1a824e 100644 --- a/drivers/watchdog/core/watchdog_core.c +++ b/drivers/watchdog/core/watchdog_core.c @@ -60,6 +60,10 @@ int register_watchdogdevice(struct watchdog_device *wdd) if (wdd == NULL || wdd->info == NULL || wdd->ops == NULL) return -ENODATA; + /* Make sure that the owner of the watchdog operations exists */ + if (wdd->ops->owner == NULL) + return -ENODATA;
This check is invalid when the driver is built in. -- To unsubscribe from this list: send the line "unsubscribe linux-watchdog" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html