search for: vsock_core_register

Displaying 20 results from an estimated 31 matches for "vsock_core_register".

2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...ort *transport_dgram; > +/* Transport used for local communication */ > +static const struct vsock_transport *transport_local; > static DEFINE_MUTEX(vsock_register_mutex); > > /**** UTILS ****/ > @@ -2130,7 +2132,7 @@ EXPORT_SYMBOL_GPL(vsock_core_get_transport); > > int vsock_core_register(const struct vsock_transport *t, int features) > { > - const struct vsock_transport *t_h2g, *t_g2h, *t_dgram; > + const struct vsock_transport *t_h2g, *t_g2h, *t_dgram, *t_local; > int err = mutex_lock_interruptible(&vsock_register_mutex); > > if (err) > @@ -2139,6 +2...
2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...ort *transport_dgram; > +/* Transport used for local communication */ > +static const struct vsock_transport *transport_local; > static DEFINE_MUTEX(vsock_register_mutex); > > /**** UTILS ****/ > @@ -2130,7 +2132,7 @@ EXPORT_SYMBOL_GPL(vsock_core_get_transport); > > int vsock_core_register(const struct vsock_transport *t, int features) > { > - const struct vsock_transport *t_h2g, *t_g2h, *t_dgram; > + const struct vsock_transport *t_h2g, *t_g2h, *t_dgram, *t_local; > int err = mutex_lock_interruptible(&vsock_register_mutex); > > if (err) > @@ -2139,6 +2...
2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...> > > +static const struct vsock_transport *transport_local; > > > static DEFINE_MUTEX(vsock_register_mutex); > > > > > > /**** UTILS ****/ > > > @@ -2130,7 +2132,7 @@ > EXPORT_SYMBOL_GPL(vsock_core_get_transport); > > > > > > int vsock_core_register(const struct vsock_transport *t, int features) > > > { > > > - const struct vsock_transport *t_h2g, *t_g2h, *t_dgram; > > > + const struct vsock_transport *t_h2g, *t_g2h, *t_dgram, *t_local; > > > int err = mutex_lock_interruptible(&vsock_register_mutex);...
2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...> > > +static const struct vsock_transport *transport_local; > > > static DEFINE_MUTEX(vsock_register_mutex); > > > > > > /**** UTILS ****/ > > > @@ -2130,7 +2132,7 @@ > EXPORT_SYMBOL_GPL(vsock_core_get_transport); > > > > > > int vsock_core_register(const struct vsock_transport *t, int features) > > > { > > > - const struct vsock_transport *t_h2g, *t_g2h, *t_dgram; > > > + const struct vsock_transport *t_h2g, *t_g2h, *t_dgram, *t_local; > > > int err = mutex_lock_interruptible(&vsock_register_mutex);...
2019 Oct 23
0
[PATCH net-next 11/14] vsock: add multi-transports support
...ansports support, we can use vsock with nested VMs (using also different hypervisors) loading both guest->host and host->guest transports at the same time. Major changes: - vsock core module can be loaded regardless of the transports - vsock_core_init() and vsock_core_exit() are renamed to vsock_core_register() and vsock_core_unregister() - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) to identify which directions the transport can handle and if it's support DGRAM (only vmci) - each stream socket is assigned to a transport when the remote CID is set (during the connect() or w...
2019 Nov 21
0
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...sport used for local communication */ > > +static const struct vsock_transport *transport_local; > > static DEFINE_MUTEX(vsock_register_mutex); > > > > /**** UTILS ****/ > > @@ -2130,7 +2132,7 @@ EXPORT_SYMBOL_GPL(vsock_core_get_transport); > > > > int vsock_core_register(const struct vsock_transport *t, int features) > > { > > - const struct vsock_transport *t_h2g, *t_g2h, *t_dgram; > > + const struct vsock_transport *t_h2g, *t_g2h, *t_dgram, *t_local; > > int err = mutex_lock_interruptible(&vsock_register_mutex); > > > >...
2019 Nov 11
2
[PATCH net-next 11/14] vsock: add multi-transports support
...with nested VMs (using > also different hypervisors) loading both guest->host and > host->guest transports at the same time. > > Major changes: > - vsock core module can be loaded regardless of the transports > - vsock_core_init() and vsock_core_exit() are renamed to > vsock_core_register() and vsock_core_unregister() > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > to identify which directions the transport can handle and if it's > support DGRAM (only vmci) > - each stream socket is assigned to a transport when the remote CID > is set (...
2019 Nov 11
2
[PATCH net-next 11/14] vsock: add multi-transports support
...with nested VMs (using > also different hypervisors) loading both guest->host and > host->guest transports at the same time. > > Major changes: > - vsock core module can be loaded regardless of the transports > - vsock_core_init() and vsock_core_exit() are renamed to > vsock_core_register() and vsock_core_unregister() > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > to identify which directions the transport can handle and if it's > support DGRAM (only vmci) > - each stream socket is assigned to a transport when the remote CID > is set (...
2019 Sep 27
0
[RFC PATCH 11/13] vsock: add 'transport_hg' to handle g2h\h2g transports
...rt_g2h->get_local_cid(); else if (transport_h2g) cid = transport_h2g->get_local_cid(); + else if (transport_hg) + cid = transport_hg->get_local_cid(); if (put_user(cid, p) != 0) retval = -EFAULT; @@ -2093,13 +2100,14 @@ EXPORT_SYMBOL_GPL(vsock_core_get_transport); int vsock_core_register(const struct vsock_transport *t) { - const struct vsock_transport *t_h2g, *t_g2h, *t_dgram; + const struct vsock_transport *t_h2g, *t_hg, *t_g2h, *t_dgram; int err = mutex_lock_interruptible(&vsock_register_mutex); if (err) return err; t_h2g = transport_h2g; + t_hg = transport_hg;...
2019 Oct 23
2
[PATCH net-next 11/14] vsock: add multi-transports support
...with nested VMs > (using also different hypervisors) loading both guest->host and > host->guest transports at the same time. > > Major changes: > - vsock core module can be loaded regardless of the transports > - vsock_core_init() and vsock_core_exit() are renamed to > vsock_core_register() and vsock_core_unregister() > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > to identify which directions the transport can handle and if it's > support DGRAM (only vmci) > - each stream socket is assigned to a transport when the remote CID > is set (...
2019 Oct 23
2
[PATCH net-next 11/14] vsock: add multi-transports support
...with nested VMs > (using also different hypervisors) loading both guest->host and > host->guest transports at the same time. > > Major changes: > - vsock core module can be loaded regardless of the transports > - vsock_core_init() and vsock_core_exit() are renamed to > vsock_core_register() and vsock_core_unregister() > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > to identify which directions the transport can handle and if it's > support DGRAM (only vmci) > - each stream socket is assigned to a transport when the remote CID > is set (...
2019 Sep 27
0
[RFC PATCH 10/13] vsock: add multi-transports support
...module can be loaded interdependently of the transports - each 'struct virtio_transport' has a new feature fields (H2G, G2H, DGRAM) to identify which directions the transport can handle and if it's support DGRAM (only vmci) - vsock_core_init() and vsock_core_exit() are renamed to vsock_core_register() and vsock_core_unregister() - each stream socket is assigned to a transport when the remote CID is set (during the connect() or when we receive a connection request on a listener socket). The remote CID is used to decide which transport to use: - remote CID > VMADDR_CID_HOST will use h...
2019 Nov 21
0
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...vsock_transport *transport_local; > > > > static DEFINE_MUTEX(vsock_register_mutex); > > > > > > > > /**** UTILS ****/ > > > > @@ -2130,7 +2132,7 @@ > > EXPORT_SYMBOL_GPL(vsock_core_get_transport); > > > > > > > > int vsock_core_register(const struct vsock_transport *t, int features) > > > > { > > > > - const struct vsock_transport *t_h2g, *t_g2h, *t_dgram; > > > > + const struct vsock_transport *t_h2g, *t_g2h, *t_dgram, *t_local; > > > > int err = mutex_lock_interruptible(&vso...
2019 Nov 11
2
[PATCH net-next 12/14] vsock/vmci: register vmci_transport only when VMCI guest/host are active
.... > > To do that, this patch adds a callback registered in the vmci driver > that will be called when a new host or guest become active. > This callback will register the vmci_transport in the VSOCK core. > If the transport is already registered, we ignore the error coming > from vsock_core_register(). So today this is mainly an issue for the VMCI vsock transport, because VMCI autoloads with vsock (and with this solution it can continue to do that, so none of our old products break due to changed behavior, which is great). Shouldn't vhost behave similar, so that any module that registers...
2019 Nov 11
2
[PATCH net-next 12/14] vsock/vmci: register vmci_transport only when VMCI guest/host are active
.... > > To do that, this patch adds a callback registered in the vmci driver > that will be called when a new host or guest become active. > This callback will register the vmci_transport in the VSOCK core. > If the transport is already registered, we ignore the error coming > from vsock_core_register(). So today this is mainly an issue for the VMCI vsock transport, because VMCI autoloads with vsock (and with this solution it can continue to do that, so none of our old products break due to changed behavior, which is great). Shouldn't vhost behave similar, so that any module that registers...
2019 Nov 12
2
[PATCH net-next 11/14] vsock: add multi-transports support
...ding both guest->host and > > > host->guest transports at the same time. > > > > > > Major changes: > > > - vsock core module can be loaded regardless of the transports > > > - vsock_core_init() and vsock_core_exit() are renamed to > > > vsock_core_register() and vsock_core_unregister() > > > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > > > to identify which directions the transport can handle and if it's > > > support DGRAM (only vmci) > > > - each stream socket is assigned to a trans...
2019 Nov 12
2
[PATCH net-next 11/14] vsock: add multi-transports support
...ding both guest->host and > > > host->guest transports at the same time. > > > > > > Major changes: > > > - vsock core module can be loaded regardless of the transports > > > - vsock_core_init() and vsock_core_exit() are renamed to > > > vsock_core_register() and vsock_core_unregister() > > > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > > > to identify which directions the transport can handle and if it's > > > support DGRAM (only vmci) > > > - each stream socket is assigned to a trans...
2019 Nov 11
0
[PATCH net-next 11/14] vsock: add multi-transports support
...so different hypervisors) loading both guest->host and > > host->guest transports at the same time. > > > > Major changes: > > - vsock core module can be loaded regardless of the transports > > - vsock_core_init() and vsock_core_exit() are renamed to > > vsock_core_register() and vsock_core_unregister() > > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > > to identify which directions the transport can handle and if it's > > support DGRAM (only vmci) > > - each stream socket is assigned to a transport when the remote...
2019 Nov 12
0
[PATCH net-next 11/14] vsock: add multi-transports support
...gt; > > > host->guest transports at the same time. > > > > > > > > Major changes: > > > > - vsock core module can be loaded regardless of the transports > > > > - vsock_core_init() and vsock_core_exit() are renamed to > > > > vsock_core_register() and vsock_core_unregister() > > > > - vsock_core_register() has a feature parameter (H2G, G2H, DGRAM) > > > > to identify which directions the transport can handle and if it's > > > > support DGRAM (only vmci) > > > > - each stream socket is...
2019 Oct 23
33
[PATCH net-next 00/14] vsock: add multi-transports support
...oid (Stefan) - Added patch 8 to simplify the API exposed to the transports (Stefan) - Patch 11: + documented VSOCK_TRANSPORT_F_* flags (Stefan) + fixed vsock_assign_transport() when the socket is already assigned + moved features outside of struct vsock_transport, and used as parameter of vsock_core_register() as a preparation of Patch 12 - Removed "vsock: add 'transport_hg' to handle g2h\h2g transports" patch - Added patch 12 to register vmci_transport only when VMCI guest/host are active The first 9 patches are cleanups and preparations, maybe some of these can go regardless of t...