media: cetrus: return an error if alloc fails
authorMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Fri, 7 Dec 2018 11:13:48 +0000 (06:13 -0500)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Fri, 7 Dec 2018 13:39:04 +0000 (08:39 -0500)
As warned by smatch:

drivers/staging/media/sunxi/cedrus/cedrus.c: drivers/staging/media/sunxi/cedrus/cedrus.c:93 cedrus_init_ctrls() error: potential null dereference 'ctx->ctrls'.  (kzalloc returns null)

While here, remove the memset(), as kzalloc() already zeroes the
struct.

Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Acked-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/staging/media/sunxi/cedrus/cedrus.c

index 67b1823..4711df7 100644 (file)
@@ -72,7 +72,8 @@ static int cedrus_init_ctrls(struct cedrus_dev *dev, struct cedrus_ctx *ctx)
        ctrl_size = sizeof(ctrl) * CEDRUS_CONTROLS_COUNT + 1;
 
        ctx->ctrls = kzalloc(ctrl_size, GFP_KERNEL);
-       memset(ctx->ctrls, 0, ctrl_size);
+       if (!ctx->ctrls)
+               return -ENOMEM;
 
        for (i = 0; i < CEDRUS_CONTROLS_COUNT; i++) {
                struct v4l2_ctrl_config cfg = { 0 };