Re: [PATCH] soc_camera: fix compiler warning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Hans

Thanks for the patch.

On Thu, 25 Jul 2013, Hans Verkuil wrote:

> 
> media_build/v4l/soc_camera.c: In function 'soc_camera_host_register':
> media_build/v4l/soc_camera.c:1513:10: warning: 'sasd' may be used uninitialized in this function [-Wmaybe-uninitialized]
>   snprintf(clk_name, sizeof(clk_name), "%d-%04x",
>           ^
> media_build/v4l/soc_camera.c:1464:34: note: 'sasd' was declared here
>   struct soc_camera_async_subdev *sasd;
>                                   ^

Heh, cool... You did report a similar warning earlier, for which I cooked 
up a patch "[media] V4L2: soc-camera: fix uninitialised use compiler 
warning" and IIRC you reported that with that patch the warning 
disappeared... How come we've got another one now? Have you updated your 
compiler again or what can be the reason?

In principle I have nothing against this patch, just wondering where 
you're getting your compilers from ;-)

> By changing the type of 'i' to unsigned and changing a condition we finally
> convince the compiler that sasd is really initialized.
> 
> Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>

I haven't got any more 3.11 fixed in my queue and we have to push this 
before -rc3 / rc4 ;) So, if you prefer, feel free to take it via your tree 
with my

Acked-by: Guennadi Liakhovetski <g.liakhovetski@xxxxxx>

Thanks
Guennadi

> ---
>  drivers/media/platform/soc_camera/soc_camera.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/media/platform/soc_camera/soc_camera.c b/drivers/media/platform/soc_camera/soc_camera.c
> index 2dd0e52..ed7a99f 100644
> --- a/drivers/media/platform/soc_camera/soc_camera.c
> +++ b/drivers/media/platform/soc_camera/soc_camera.c
> @@ -1466,7 +1466,8 @@ static int scan_async_group(struct soc_camera_host *ici,
>  	struct soc_camera_device *icd;
>  	struct soc_camera_desc sdesc = {.host_desc.bus_id = ici->nr,};
>  	char clk_name[V4L2_SUBDEV_NAME_SIZE];
> -	int ret, i;
> +	unsigned int i;
> +	int ret;
>  
>  	/* First look for a sensor */
>  	for (i = 0; i < size; i++) {
> @@ -1475,7 +1476,7 @@ static int scan_async_group(struct soc_camera_host *ici,
>  			break;
>  	}
>  
> -	if (i == size || asd[i]->bus_type != V4L2_ASYNC_BUS_I2C) {
> +	if (i >= size || asd[i]->bus_type != V4L2_ASYNC_BUS_I2C) {
>  		/* All useless */
>  		dev_err(ici->v4l2_dev.dev, "No I2C data source found!\n");
>  		return -ENODEV;
> -- 
> 1.8.3.2
> 

---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux