summaryrefslogtreecommitdiffstats
path: root/drivers/vhost
diff options
context:
space:
mode:
authorStefan Hajnoczi <stefanha@redhat.com>2017-11-09 13:29:10 +0000
committerMichael S. Tsirkin <mst@redhat.com>2017-11-14 23:57:40 +0200
commita72b69dc083a931422cc8a5e33841aff7d5312f2 (patch)
treeddc2e24355087e2f72179b4b6e01cd27d415f974 /drivers/vhost
parentca2c5b33a285723f517fa296b76f7fd36c383dad (diff)
downloadlinux-stable-a72b69dc083a931422cc8a5e33841aff7d5312f2.tar.gz
linux-stable-a72b69dc083a931422cc8a5e33841aff7d5312f2.tar.bz2
linux-stable-a72b69dc083a931422cc8a5e33841aff7d5312f2.zip
vhost/vsock: fix uninitialized vhost_vsock->guest_cid
The vhost_vsock->guest_cid field is uninitialized when /dev/vhost-vsock is opened until the VHOST_VSOCK_SET_GUEST_CID ioctl is called. kvmalloc(..., GFP_KERNEL | __GFP_RETRY_MAYFAIL) does not zero memory. All other vhost_vsock fields are initialized explicitly so just initialize this field too. Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'drivers/vhost')
-rw-r--r--drivers/vhost/vsock.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/vhost/vsock.c b/drivers/vhost/vsock.c
index c9de9c41aa97..5a5e981bd8e4 100644
--- a/drivers/vhost/vsock.c
+++ b/drivers/vhost/vsock.c
@@ -518,6 +518,8 @@ static int vhost_vsock_dev_open(struct inode *inode, struct file *file)
goto out;
}
+ vsock->guest_cid = 0; /* no CID assigned yet */
+
atomic_set(&vsock->queued_replies, 0);
vqs[VSOCK_VQ_TX] = &vsock->vqs[VSOCK_VQ_TX];