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 - 2026 Red Hat, Inc.