Messages in this thread | | | Date | Thu, 21 Apr 2016 16:30:32 -0700 | From | Guenter Roeck <> | Subject | Re: [PATCH] watchdog: core: Fix circular locking dependency |
| |
On Thu, Apr 21, 2016 at 03:50:55PM +0100, One Thousand Gnomes wrote: > > Turns out the call to cancel_delayed_work_sync() in watchdog_release() > > is not necessary and can be dropped. If the worker is no longer necessary, > > the subsequent call to watchdog_update_worker() will cancel it. If it is > > already running, it won't do anything, since the worker function checks > > if it needs to ping the watchdog or not. > > Is this actually true. Consider the pathalogical case of the device being > closed and the modue unloaded. In that case the close completes, we drop > the module count but could still do work on it. > Module unload is handled separately and also calls cancel_delayed_work_sync().
Guenter
| |