Fix uninitialized value issues reported by Coverity:
Field 'msg.reserved' is uninitialized when calling write().
While the 'struct vhost_msg' does not have a 'reserved' field,
we still initialize it to have the two parts of the function
consistent.
Reported-by: Coverity (CID 1432864: UNINIT)
Fixes: c471ad0e9bd ("vhost_net: device IOTLB support")
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
v2: comment 'struct vhost_msg' is also initialized (Peter)
---
hw/virtio/vhost-backend.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost-backend.c
index 88c8ecc9e03..222bbcc62de 100644
--- a/hw/virtio/vhost-backend.c
+++ b/hw/virtio/vhost-backend.c
@@ -257,7 +257,7 @@ static int vhost_kernel_send_device_iotlb_msg(struct vhost_dev *dev,
struct vhost_iotlb_msg *imsg)
{
if (dev->backend_cap & (1ULL << VHOST_BACKEND_F_IOTLB_MSG_V2)) {
- struct vhost_msg_v2 msg;
+ struct vhost_msg_v2 msg = {};
msg.type = VHOST_IOTLB_MSG_V2;
msg.iotlb = *imsg;
@@ -267,7 +267,7 @@ static int vhost_kernel_send_device_iotlb_msg(struct vhost_dev *dev,
return -EFAULT;
}
} else {
- struct vhost_msg msg;
+ struct vhost_msg msg = {};
msg.type = VHOST_IOTLB_MSG;
msg.iotlb = *imsg;
--
2.26.2
On Tue, Nov 03, 2020 at 07:35:41AM +0100, Philippe Mathieu-Daudé wrote: >Fix uninitialized value issues reported by Coverity: > > Field 'msg.reserved' is uninitialized when calling write(). > >While the 'struct vhost_msg' does not have a 'reserved' field, >we still initialize it to have the two parts of the function >consistent. > >Reported-by: Coverity (CID 1432864: UNINIT) >Fixes: c471ad0e9bd ("vhost_net: device IOTLB support") >Reviewed-by: Peter Maydell <peter.maydell@linaro.org> >Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> >--- >v2: comment 'struct vhost_msg' is also initialized (Peter) >--- > hw/virtio/vhost-backend.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Reviewed-by: Stefano Garzarella <sgarzare@redhat.com> > >diff --git a/hw/virtio/vhost-backend.c b/hw/virtio/vhost-backend.c >index 88c8ecc9e03..222bbcc62de 100644 >--- a/hw/virtio/vhost-backend.c >+++ b/hw/virtio/vhost-backend.c >@@ -257,7 +257,7 @@ static int vhost_kernel_send_device_iotlb_msg(struct vhost_dev *dev, > struct vhost_iotlb_msg *imsg) > { > if (dev->backend_cap & (1ULL << VHOST_BACKEND_F_IOTLB_MSG_V2)) { >- struct vhost_msg_v2 msg; >+ struct vhost_msg_v2 msg = {}; > > msg.type = VHOST_IOTLB_MSG_V2; > msg.iotlb = *imsg; >@@ -267,7 +267,7 @@ static int vhost_kernel_send_device_iotlb_msg(struct vhost_dev *dev, > return -EFAULT; > } > } else { >- struct vhost_msg msg; >+ struct vhost_msg msg = {}; > > msg.type = VHOST_IOTLB_MSG; > msg.iotlb = *imsg; >-- >2.26.2 > >
© 2016 - 2024 Red Hat, Inc.