1 /*- 2 * Copyright (c) 2018 VMware, Inc. 3 * 4 * SPDX-License-Identifier: (BSD-2-Clause OR GPL-2.0) 5 */ 6 7 /* VMCI QueuePair API definition. */ 8 9 #ifndef _VMCI_QUEUE_PAIR_H_ 10 #define _VMCI_QUEUE_PAIR_H_ 11 12 #include "vmci_kernel_if.h" 13 #include "vmci_queue.h" 14 15 int vmci_qp_guest_endpoints_init(void); 16 void vmci_qp_guest_endpoints_exit(void); 17 void vmci_qp_guest_endpoints_sync(void); 18 void vmci_qp_guest_endpoints_convert(bool to_local, bool device_reset); 19 20 int vmci_queue_pair_alloc(struct vmci_handle *handle, 21 struct vmci_queue **produce_q, uint64_t produce_size, 22 struct vmci_queue **consume_q, uint64_t consume_size, 23 vmci_id peer, uint32_t flags, vmci_privilege_flags priv_flags); 24 int vmci_queue_pair_detach(struct vmci_handle handle); 25 26 #endif /* !_VMCI_QUEUE_PAIR_H_ */ 27