vsock/vmci: register vmci_transport only when VMCI guest/host are active
To allow other transports to be loaded with vmci_transport, we register the vmci_transport as G2H or H2G only when a VMCI guest or host is active. To do that, this patch adds a callback registered in the vmci driver that will be called when the host or guest becomes active. This callback will register the vmci_transport in the VSOCK core. Cc: Jorgen Hansen <jhansen@vmware.com> Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
c0cfa2d8a7
commit
b1bba80a43
@@ -19,6 +19,7 @@
|
||||
struct msghdr;
|
||||
typedef void (vmci_device_shutdown_fn) (void *device_registration,
|
||||
void *user_data);
|
||||
typedef void (*vmci_vsock_cb) (bool is_host);
|
||||
|
||||
int vmci_datagram_create_handle(u32 resource_id, u32 flags,
|
||||
vmci_datagram_recv_cb recv_cb,
|
||||
@@ -37,6 +38,7 @@ int vmci_doorbell_destroy(struct vmci_handle handle);
|
||||
int vmci_doorbell_notify(struct vmci_handle handle, u32 priv_flags);
|
||||
u32 vmci_get_context_id(void);
|
||||
bool vmci_is_context_owner(u32 context_id, kuid_t uid);
|
||||
int vmci_register_vsock_callback(vmci_vsock_cb callback);
|
||||
|
||||
int vmci_event_subscribe(u32 event,
|
||||
vmci_event_cb callback, void *callback_data,
|
||||
|
Reference in New Issue
Block a user