media: v4l2-core: Remove BUG() from i2c and spi helpers
authorEzequiel Garcia <ezequiel@collabora.com>
Thu, 15 Aug 2019 16:48:06 +0000 (13:48 -0300)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Mon, 26 Aug 2019 13:52:36 +0000 (10:52 -0300)
Currently, the i2c and spi subdev creation helpers
are calling BUG() when passed a NULL v4l2_device parameter.

This makes little sense; simply returning NULL seems more
sensible.

These two helpers may already return NULL on error, so callers
should already be checking for this, or at least be prepared
for a NULL result.

Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/v4l2-core/v4l2-i2c.c
drivers/media/v4l2-core/v4l2-spi.c

index a26d48f..d549291 100644 (file)
@@ -64,7 +64,8 @@ struct v4l2_subdev *v4l2_i2c_new_subdev_board(struct v4l2_device *v4l2_dev,
        struct v4l2_subdev *sd = NULL;
        struct i2c_client *client;
 
-       BUG_ON(!v4l2_dev);
+       if (!v4l2_dev)
+               return NULL;
 
        request_module(I2C_MODULE_PREFIX "%s", info->type);
 
index 2a7e82e..1516265 100644 (file)
@@ -39,8 +39,8 @@ struct v4l2_subdev *v4l2_spi_new_subdev(struct v4l2_device *v4l2_dev,
        struct v4l2_subdev *sd = NULL;
        struct spi_device *spi = NULL;
 
-       BUG_ON(!v4l2_dev);
-
+       if (!v4l2_dev)
+               return NULL;
        if (info->modalias[0])
                request_module(info->modalias);