When compiling with -Werror=maybe-uninitialized, gcc may complains the possible uninitialized umem. Since the callers won't pass value other than 1 to 3, making 3 as default to fix the compiler warning. Signed-off-by: Jason Wang <jasowang at redhat.com> --- drivers/vdpa/mlx5/net/mlx5_vnet.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c index f1d54814db97..07ccc61cd6f6 100644 --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c @@ -703,7 +703,7 @@ static void umem_destroy(struct mlx5_vdpa_net *ndev, struct mlx5_vdpa_virtqueue case 2: umem = &mvq->umem2; break; - case 3: + default: umem = &mvq->umem3; break; } -- 2.25.1
Michael S. Tsirkin
2021-Jan-17 10:30 UTC
[PATCH V2] mlx5: vdpa: fix possible uninitialized var
On Thu, Jan 14, 2021 at 03:09:04PM +0800, Jason Wang wrote:> When compiling with -Werror=maybe-uninitialized, gcc may complains the > possible uninitialized umem. Since the callers won't pass value other > than 1 to 3, making 3 as default to fix the compiler warning. > > Signed-off-by: Jason Wang <jasowang at redhat.com>Of course if it's actually something else this is not DTRT ... As long as we worry about this warning, let's have defence in depth: case 3: umem = &mvq->umem3; break; + default: + umem = NULL; + BUG(); + break;> --- > drivers/vdpa/mlx5/net/mlx5_vnet.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c > index f1d54814db97..07ccc61cd6f6 100644 > --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c > +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c > @@ -703,7 +703,7 @@ static void umem_destroy(struct mlx5_vdpa_net *ndev, struct mlx5_vdpa_virtqueue > case 2: > umem = &mvq->umem2; > break; > - case 3: > + default: > umem = &mvq->umem3; > break; > } > -- > 2.25.1