summaryrefslogtreecommitdiffstats
path: root/drivers/hsi/controllers
diff options
context:
space:
mode:
authorAndrzej Hajda <a.hajda@samsung.com>2015-09-21 15:33:43 +0200
committerSebastian Reichel <sre@kernel.org>2016-01-07 16:06:22 +0100
commit6bf6ded3008a407ccab5ad72eb59ab71b97cc290 (patch)
treefb6e5de8a0a0826ea2ec8743d899d03e8cfd6137 /drivers/hsi/controllers
parentHSI: Remove struct hsi_client private fields from kernel-doc (diff)
downloadlinux-6bf6ded3008a407ccab5ad72eb59ab71b97cc290.tar.xz
linux-6bf6ded3008a407ccab5ad72eb59ab71b97cc290.zip
HSI: omap_ssi: fix handling ida_simple_get result
The function can return negative value. The problem has been detected using proposed semantic patch scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1]. [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576 Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Sebastian Reichel <sre@kernel.org>
Diffstat (limited to 'drivers/hsi/controllers')
-rw-r--r--drivers/hsi/controllers/omap_ssi.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/hsi/controllers/omap_ssi.c b/drivers/hsi/controllers/omap_ssi.c
index f6d3100b7a32..27b91f14ba7a 100644
--- a/drivers/hsi/controllers/omap_ssi.c
+++ b/drivers/hsi/controllers/omap_ssi.c
@@ -323,11 +323,10 @@ static int __init ssi_add_controller(struct hsi_controller *ssi,
return -ENOMEM;
}
- ssi->id = ida_simple_get(&platform_omap_ssi_ida, 0, 0, GFP_KERNEL);
- if (ssi->id < 0) {
- err = ssi->id;
+ err = ida_simple_get(&platform_omap_ssi_ida, 0, 0, GFP_KERNEL);
+ if (err < 0)
goto out_err;
- }
+ ssi->id = err;
ssi->owner = THIS_MODULE;
ssi->device.parent = &pd->dev;