Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/vmware/vmci/vmci_kernel_if.h
Show First 20 Lines • Show All 42 Lines • ▼ Show 20 Lines | |||||
typedef struct mtx vmci_lock; | typedef struct mtx vmci_lock; | ||||
int vmci_init_lock(vmci_lock *lock, char *name); | int vmci_init_lock(vmci_lock *lock, char *name); | ||||
void vmci_cleanup_lock(vmci_lock *lock); | void vmci_cleanup_lock(vmci_lock *lock); | ||||
void vmci_grab_lock(vmci_lock *lock); | void vmci_grab_lock(vmci_lock *lock); | ||||
void vmci_release_lock(vmci_lock *lock); | void vmci_release_lock(vmci_lock *lock); | ||||
void vmci_grab_lock_bh(vmci_lock *lock); | void vmci_grab_lock_bh(vmci_lock *lock); | ||||
void vmci_release_lock_bh(vmci_lock *lock); | void vmci_release_lock_bh(vmci_lock *lock); | ||||
int vmci_initialized_lock(vmci_lock *lock); | |||||
void *vmci_alloc_kernel_mem(size_t size, int flags); | void *vmci_alloc_kernel_mem(size_t size, int flags); | ||||
void vmci_free_kernel_mem(void *ptr, size_t size); | void vmci_free_kernel_mem(void *ptr, size_t size); | ||||
typedef struct sema vmci_event; | typedef struct sema vmci_event; | ||||
typedef int (*vmci_event_release_cb)(void *client_data); | typedef int (*vmci_event_release_cb)(void *client_data); | ||||
void vmci_create_event(vmci_event *event); | void vmci_create_event(vmci_event *event); | ||||
void vmci_destroy_event(vmci_event *event); | void vmci_destroy_event(vmci_event *event); | ||||
void vmci_signal_event(vmci_event *event); | void vmci_signal_event(vmci_event *event); | ||||
void vmci_wait_on_event(vmci_event *event, vmci_event_release_cb release_cb, | void vmci_wait_on_event(vmci_event *event, vmci_event_release_cb release_cb, | ||||
void *client_data); | void *client_data); | ||||
bool vmci_wait_on_event_interruptible(vmci_event *event, | bool vmci_wait_on_event_interruptible(vmci_event *event, | ||||
vmci_event_release_cb release_cb, void *client_data); | vmci_event_release_cb release_cb, void *client_data); | ||||
typedef void (vmci_work_fn)(void *data); | typedef void (vmci_work_fn)(void *data); | ||||
bool vmci_can_schedule_delayed_work(void); | bool vmci_can_schedule_delayed_work(void); | ||||
int vmci_schedule_delayed_work(vmci_work_fn *work_fn, void *data); | int vmci_schedule_delayed_work(vmci_work_fn *work_fn, void *data); | ||||
void vmci_delayed_work_cb(void *context, int data); | void vmci_delayed_work_cb(void *context, int data); | ||||
typedef struct mtx vmci_mutex; | typedef struct mtx vmci_mutex; | ||||
int vmci_mutex_init(vmci_mutex *mutex, char *name); | int vmci_mutex_init(vmci_mutex *mutex, char *name); | ||||
void vmci_mutex_destroy(vmci_mutex *mutex); | void vmci_mutex_destroy(vmci_mutex *mutex); | ||||
void vmci_mutex_acquire(vmci_mutex *mutex); | void vmci_mutex_acquire(vmci_mutex *mutex); | ||||
void vmci_mutex_release(vmci_mutex *mutex); | void vmci_mutex_release(vmci_mutex *mutex); | ||||
int vmci_mutex_initialized(vmci_mutex *mutex); | |||||
void *vmci_alloc_queue(uint64_t size, uint32_t flags); | void *vmci_alloc_queue(uint64_t size, uint32_t flags); | ||||
void vmci_free_queue(void *q, uint64_t size); | void vmci_free_queue(void *q, uint64_t size); | ||||
typedef PPN *vmci_ppn_list; | typedef PPN *vmci_ppn_list; | ||||
struct ppn_set { | struct ppn_set { | ||||
uint64_t num_produce_pages; | uint64_t num_produce_pages; | ||||
uint64_t num_consume_pages; | uint64_t num_consume_pages; | ||||
Show All 12 Lines |