From: David Kershner Date: Tue, 28 Mar 2017 13:34:43 +0000 (-0400) Subject: staging: unisys: visorbus: add error handling for dev_start_periodic_work X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=b90194d9bb6c006062624e7ca6424aa1474986df;p=linux.git staging: unisys: visorbus: add error handling for dev_start_periodic_work Report errors if we have a problem in dev_start_periodic_work. Signed-off-by: David Kershner Reviewed-by: Reviewed-by: Tim Sell Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/unisys/visorbus/visorbus_main.c b/drivers/staging/unisys/visorbus/visorbus_main.c index 6f3bbe55f4163..c97f32f5c235e 100644 --- a/drivers/staging/unisys/visorbus/visorbus_main.c +++ b/drivers/staging/unisys/visorbus/visorbus_main.c @@ -464,16 +464,17 @@ dev_periodic_work(unsigned long __opaque) mod_timer(&dev->timer, jiffies + POLLJIFFIES_NORMALCHANNEL); } -static void +static int dev_start_periodic_work(struct visor_device *dev) { if (dev->being_removed || dev->timer_active) - return; + return -EINVAL; /* now up by at least 2 */ get_device(&dev->device); dev->timer.expires = jiffies + POLLJIFFIES_NORMALCHANNEL; add_timer(&dev->timer); dev->timer_active = true; + return 0; } static void