[PATCH] virtio: fix "warning: ‘queue’ may be used uninitialized"

Michael S. Tsirkin
2016-04-05T08:04:10Z

On Mon, Apr 04, 2016 at 02:14:19PM -0400, Jeff Mahoney
wrote:
> This fixes the following warning:
> drivers/virtio/virtio_ring.c:1032:5: warning: ?queue? may be used
> uninitialized in this function
>
> The conditions that govern when queue is set aren't apparent to gcc.
>
> Setting queue = NULL clears the warning.
>
> Signed-off-by: Jeff Mahoney <jeffm at suse.com>

Which gcc version produces this warning?
I do not seem to see it with gcc 5.3.1.
Also - use uninitialized_var then?

> ---
>
>  drivers/virtio/virtio_ring.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- a/drivers/virtio/virtio_ring.c
> +++ b/drivers/virtio/virtio_ring.c
> @@ -1006,7 +1006,7 @@ struct virtqueue *vring_create_virtqueue
>  	const char *name)
>  {
>  	struct virtqueue *vq;
> -	void *queue;
> +	void *queue = NULL;
>  	dma_addr_t dma_addr;
>  	size_t queue_size_in_bytes;
>  	struct vring vring;
>
> --
> Jeff Mahoney
> SUSE Labs