diff --git a/drivers/misc/vmw_vmci/vmci_queue_pair.c b/drivers/misc/vmw_vmci/vmci_queue_pair.c index da47e457e158..6417a26df8d8 100644 --- a/drivers/misc/vmw_vmci/vmci_queue_pair.c +++ b/drivers/misc/vmw_vmci/vmci_queue_pair.c @@ -3355,11 +3355,11 @@ ssize_t vmci_qpair_dequev(struct vmci_qp *qpair, { ssize_t result; - qp_lock(qpair); - if (!qpair || !iov) return VMCI_ERROR_INVALID_ARGS; + qp_lock(qpair); + do { result = qp_dequeue_locked(qpair->produce_q, qpair->consume_q,