[PATCH 3/3] staging: greybus: light: check delay_{on|off} before use
Rui Miguel Silva
rmfrfs at gmail.com
Fri Sep 30 17:24:07 UTC 2016
Even though we trust leds core that the pointers should be valid, we are
safer to check delay_{on|off} before use.
Also, this avoid a smatch warning:
drivers/staging/greybus/light.c:484 gb_blink_set()
warn: variable dereferenced before check 'delay_on' (see line 476)
Signed-off-by: Rui Miguel Silva <rmfrfs at gmail.com>
---
drivers/staging/greybus/light.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/staging/greybus/light.c b/drivers/staging/greybus/light.c
index c610d55..2de9fc3 100644
--- a/drivers/staging/greybus/light.c
+++ b/drivers/staging/greybus/light.c
@@ -464,6 +464,9 @@ static int gb_blink_set(struct led_classdev *cdev, unsigned long *delay_on,
if (channel->releasing)
return -ESHUTDOWN;
+ if (!delay_on || !delay_off)
+ return -EINVAL;
+
mutex_lock(&channel->lock);
ret = gb_pm_runtime_get_sync(bundle);
if (ret < 0)
--
2.10.0
More information about the devel
mailing list