Lines Matching refs:queue_pair_entry
21 struct queue_pair_entry { struct
22 vmci_list_item(queue_pair_entry) list_item;
32 struct queue_pair_entry qp; argument
41 vmci_list(queue_pair_entry) head;
52 static struct queue_pair_entry *queue_pair_list_find_entry(
55 struct queue_pair_entry *entry);
57 struct queue_pair_entry *entry);
58 static struct queue_pair_entry *queue_pair_list_get_head(
203 static struct queue_pair_entry *
207 struct queue_pair_entry *next; in queue_pair_list_find_entry()
238 struct queue_pair_entry *entry) in queue_pair_list_add_entry()
263 struct queue_pair_entry *entry) in queue_pair_list_remove_entry()
287 static struct queue_pair_entry *
583 struct qp_guest_endpoint *queue_pair_entry = NULL; in vmci_queue_pair_alloc_guest_work() local
611 if ((queue_pair_entry = in vmci_queue_pair_alloc_guest_work()
614 if (queue_pair_entry->qp.flags & VMCI_QPFLAG_LOCAL) { in vmci_queue_pair_alloc_guest_work()
616 if (queue_pair_entry->qp.ref_count > 1) { in vmci_queue_pair_alloc_guest_work()
623 if (queue_pair_entry->qp.produce_size != consume_size || in vmci_queue_pair_alloc_guest_work()
624 queue_pair_entry->qp.consume_size != produce_size || in vmci_queue_pair_alloc_guest_work()
625 queue_pair_entry->qp.flags != in vmci_queue_pair_alloc_guest_work()
640 my_produce_q = queue_pair_entry->consume_q; in vmci_queue_pair_alloc_guest_work()
641 my_consume_q = queue_pair_entry->produce_q; in vmci_queue_pair_alloc_guest_work()
664 queue_pair_entry = qp_guest_endpoint_create(*handle, peer, flags, in vmci_queue_pair_alloc_guest_work()
666 if (!queue_pair_entry) { in vmci_queue_pair_alloc_guest_work()
674 my_consume_q, num_consume_pages, &queue_pair_entry->ppn_set); in vmci_queue_pair_alloc_guest_work()
684 if (queue_pair_entry->qp.flags & VMCI_QPFLAG_LOCAL) { in vmci_queue_pair_alloc_guest_work()
696 if (queue_pair_entry->qp.handle.context != context_id || in vmci_queue_pair_alloc_guest_work()
697 (queue_pair_entry->qp.peer != VMCI_INVALID_ID && in vmci_queue_pair_alloc_guest_work()
698 queue_pair_entry->qp.peer != context_id)) { in vmci_queue_pair_alloc_guest_work()
703 if (queue_pair_entry->qp.flags & VMCI_QPFLAG_ATTACH_ONLY) { in vmci_queue_pair_alloc_guest_work()
708 result = vmci_queue_pair_alloc_hypercall(queue_pair_entry); in vmci_queue_pair_alloc_guest_work()
717 queue_pair_list_add_entry(&qp_guest_endpoints, &queue_pair_entry->qp); in vmci_queue_pair_alloc_guest_work()
720 queue_pair_entry->qp.ref_count++; in vmci_queue_pair_alloc_guest_work()
721 *handle = queue_pair_entry->qp.handle; in vmci_queue_pair_alloc_guest_work()
730 if ((queue_pair_entry->qp.flags & VMCI_QPFLAG_LOCAL) && in vmci_queue_pair_alloc_guest_work()
731 queue_pair_entry->qp.ref_count == 1) { in vmci_queue_pair_alloc_guest_work()
742 if (queue_pair_entry) { in vmci_queue_pair_alloc_guest_work()
744 qp_guest_endpoint_destroy(queue_pair_entry); in vmci_queue_pair_alloc_guest_work()
755 ASSERT(queue_pair_entry->qp.ref_count > 0); in vmci_queue_pair_alloc_guest_work()