|
@@ -981,6 +981,7 @@ static int vhost_process_iotlb_msg(struct vhost_dev *dev,
|
|
{
|
|
{
|
|
int ret = 0;
|
|
int ret = 0;
|
|
|
|
|
|
|
|
+ mutex_lock(&dev->mutex);
|
|
vhost_dev_lock_vqs(dev);
|
|
vhost_dev_lock_vqs(dev);
|
|
switch (msg->type) {
|
|
switch (msg->type) {
|
|
case VHOST_IOTLB_UPDATE:
|
|
case VHOST_IOTLB_UPDATE:
|
|
@@ -1016,6 +1017,8 @@ static int vhost_process_iotlb_msg(struct vhost_dev *dev,
|
|
}
|
|
}
|
|
|
|
|
|
vhost_dev_unlock_vqs(dev);
|
|
vhost_dev_unlock_vqs(dev);
|
|
|
|
+ mutex_unlock(&dev->mutex);
|
|
|
|
+
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
ssize_t vhost_chr_write_iter(struct vhost_dev *dev,
|
|
ssize_t vhost_chr_write_iter(struct vhost_dev *dev,
|