|
@@ -630,7 +630,7 @@ static int vhost_net_rx_peek_head_len(struct vhost_net *net, struct sock *sk)
|
|
|
|
|
|
if (!len && vq->busyloop_timeout) {
|
|
|
/* Both tx vq and rx socket were polled here */
|
|
|
- mutex_lock(&vq->mutex);
|
|
|
+ mutex_lock_nested(&vq->mutex, 1);
|
|
|
vhost_disable_notify(&net->dev, vq);
|
|
|
|
|
|
preempt_disable();
|
|
@@ -763,7 +763,7 @@ static void handle_rx(struct vhost_net *net)
|
|
|
struct iov_iter fixup;
|
|
|
__virtio16 num_buffers;
|
|
|
|
|
|
- mutex_lock(&vq->mutex);
|
|
|
+ mutex_lock_nested(&vq->mutex, 0);
|
|
|
sock = vq->private_data;
|
|
|
if (!sock)
|
|
|
goto out;
|