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 *
580 struct qp_guest_endpoint *queue_pair_entry = NULL; in vmci_queue_pair_alloc_guest_work() local
608 if ((queue_pair_entry = in vmci_queue_pair_alloc_guest_work()
611 if (queue_pair_entry->qp.flags & VMCI_QPFLAG_LOCAL) { in vmci_queue_pair_alloc_guest_work()
613 if (queue_pair_entry->qp.ref_count > 1) { in vmci_queue_pair_alloc_guest_work()
620 if (queue_pair_entry->qp.produce_size != consume_size || in vmci_queue_pair_alloc_guest_work()
621 queue_pair_entry->qp.consume_size != produce_size || in vmci_queue_pair_alloc_guest_work()
622 queue_pair_entry->qp.flags != in vmci_queue_pair_alloc_guest_work()
637 my_produce_q = queue_pair_entry->consume_q; in vmci_queue_pair_alloc_guest_work()
638 my_consume_q = queue_pair_entry->produce_q; in vmci_queue_pair_alloc_guest_work()
661 queue_pair_entry = qp_guest_endpoint_create(*handle, peer, flags, in vmci_queue_pair_alloc_guest_work()
663 if (!queue_pair_entry) { in vmci_queue_pair_alloc_guest_work()
671 my_consume_q, num_consume_pages, &queue_pair_entry->ppn_set); in vmci_queue_pair_alloc_guest_work()
681 if (queue_pair_entry->qp.flags & VMCI_QPFLAG_LOCAL) { in vmci_queue_pair_alloc_guest_work()
693 if (queue_pair_entry->qp.handle.context != context_id || in vmci_queue_pair_alloc_guest_work()
694 (queue_pair_entry->qp.peer != VMCI_INVALID_ID && in vmci_queue_pair_alloc_guest_work()
695 queue_pair_entry->qp.peer != context_id)) { in vmci_queue_pair_alloc_guest_work()
700 if (queue_pair_entry->qp.flags & VMCI_QPFLAG_ATTACH_ONLY) { in vmci_queue_pair_alloc_guest_work()
705 result = vmci_queue_pair_alloc_hypercall(queue_pair_entry); in vmci_queue_pair_alloc_guest_work()
714 queue_pair_list_add_entry(&qp_guest_endpoints, &queue_pair_entry->qp); in vmci_queue_pair_alloc_guest_work()
717 queue_pair_entry->qp.ref_count++; in vmci_queue_pair_alloc_guest_work()
718 *handle = queue_pair_entry->qp.handle; in vmci_queue_pair_alloc_guest_work()
727 if ((queue_pair_entry->qp.flags & VMCI_QPFLAG_LOCAL) && in vmci_queue_pair_alloc_guest_work()
728 queue_pair_entry->qp.ref_count == 1) { in vmci_queue_pair_alloc_guest_work()
739 if (queue_pair_entry) { in vmci_queue_pair_alloc_guest_work()
741 qp_guest_endpoint_destroy(queue_pair_entry); in vmci_queue_pair_alloc_guest_work()
752 ASSERT(queue_pair_entry->qp.ref_count > 0); in vmci_queue_pair_alloc_guest_work()