Displaying 20 results from an estimated 21 matches for "err_busy".
Did you mean:
err_buf
2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...VSOCK_TRANSPORT_F_H2G) {
> if (t_h2g) {
> @@ -2164,9 +2167,18 @@ int vsock_core_register(const struct
> vsock_transport *t, int features)
> t_dgram = t;
> }
>
> + if (features & VSOCK_TRANSPORT_F_LOCAL) {
> + if (t_local) {
> + err = -EBUSY;
> + goto err_busy;
> + }
> + t_local = t;
> + }
> +
> transport_h2g = t_h2g;
> transport_g2h = t_g2h;
> transport_dgram = t_dgram;
> + transport_local = t_local;
>
> err_busy:
> mutex_unlock(&vsock_register_mutex);
> @@ -2187,6 +2199,9 @@ void vsock_core_unregister...
2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...VSOCK_TRANSPORT_F_H2G) {
> if (t_h2g) {
> @@ -2164,9 +2167,18 @@ int vsock_core_register(const struct
> vsock_transport *t, int features)
> t_dgram = t;
> }
>
> + if (features & VSOCK_TRANSPORT_F_LOCAL) {
> + if (t_local) {
> + err = -EBUSY;
> + goto err_busy;
> + }
> + t_local = t;
> + }
> +
> transport_h2g = t_h2g;
> transport_g2h = t_g2h;
> transport_dgram = t_dgram;
> + transport_local = t_local;
>
> err_busy:
> mutex_unlock(&vsock_register_mutex);
> @@ -2187,6 +2199,9 @@ void vsock_core_unregister...
2014 May 01
1
[PATCH] vsock: Make transport the proto owner
...ps = &vsock_device_ops,
};
-static int __vsock_core_init(void)
+int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
{
- int err;
+ int err = mutex_lock_interruptible(&vsock_register_mutex);
+ if (err)
+ return err;
+
+ if (transport) {
+ err = -EBUSY;
+ goto err_busy;
+ }
+
+ /* Transport must be the owner of the protocol so that it can't
+ * unload while there are open sockets.
+ */
+ vsock_proto.owner = owner;
+ transport = t;
vsock_init_tables();
@@ -1951,36 +1964,19 @@ static int __vsock_core_init(void)
goto err_unregister_proto;
}
+ mute...
2014 May 01
1
[PATCH] vsock: Make transport the proto owner
...ps = &vsock_device_ops,
};
-static int __vsock_core_init(void)
+int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
{
- int err;
+ int err = mutex_lock_interruptible(&vsock_register_mutex);
+ if (err)
+ return err;
+
+ if (transport) {
+ err = -EBUSY;
+ goto err_busy;
+ }
+
+ /* Transport must be the owner of the protocol so that it can't
+ * unload while there are open sockets.
+ */
+ vsock_proto.owner = owner;
+ transport = t;
vsock_init_tables();
@@ -1951,36 +1964,19 @@ static int __vsock_core_init(void)
goto err_unregister_proto;
}
+ mute...
2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...vsock_core_register(const struct
> > > vsock_transport *t, int features)
> > > t_dgram = t;
> > > }
> > >
> > > + if (features & VSOCK_TRANSPORT_F_LOCAL) {
> > > + if (t_local) {
> > > + err = -EBUSY;
> > > + goto err_busy;
> > > + }
> > > + t_local = t;
> > > + }
> > > +
> > > transport_h2g = t_h2g;
> > > transport_g2h = t_g2h;
> > > transport_dgram = t_dgram;
> > > + transport_local = t_local;
> > >
> > > err_busy:
&g...
2019 Nov 21
2
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...vsock_core_register(const struct
> > > vsock_transport *t, int features)
> > > t_dgram = t;
> > > }
> > >
> > > + if (features & VSOCK_TRANSPORT_F_LOCAL) {
> > > + if (t_local) {
> > > + err = -EBUSY;
> > > + goto err_busy;
> > > + }
> > > + t_local = t;
> > > + }
> > > +
> > > transport_h2g = t_h2g;
> > > transport_g2h = t_g2h;
> > > transport_dgram = t_dgram;
> > > + transport_local = t_local;
> > >
> > > err_busy:
&g...
2019 Oct 23
0
[PATCH net-next 11/14] vsock: add multi-transports support
...ock_device_ops,
};
-int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
+static int __init vsock_init(void)
{
- int err = mutex_lock_interruptible(&vsock_register_mutex);
+ int err = 0;
- if (err)
- return err;
-
- if (transport_single) {
- err = -EBUSY;
- goto err_busy;
- }
-
- /* Transport must be the owner of the protocol so that it can't
- * unload while there are open sockets.
- */
- vsock_proto.owner = owner;
- transport_single = t;
+ vsock_init_tables();
+ vsock_proto.owner = THIS_MODULE;
vsock_device.minor = MISC_DYNAMIC_MINOR;
err = misc_regis...
2019 Sep 27
0
[RFC PATCH 10/13] vsock: add multi-transports support
...ock_device_ops,
};
-int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
+static int __init vsock_init(void)
{
- int err = mutex_lock_interruptible(&vsock_register_mutex);
+ int err = 0;
- if (err)
- return err;
-
- if (transport_single) {
- err = -EBUSY;
- goto err_busy;
- }
-
- /* Transport must be the owner of the protocol so that it can't
- * unload while there are open sockets.
- */
- vsock_proto.owner = owner;
- transport_single = t;
+ vsock_init_tables();
+ vsock_proto.owner = THIS_MODULE;
vsock_device.minor = MISC_DYNAMIC_MINOR;
err = misc_regis...
2019 Nov 21
0
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...{
> > @@ -2164,9 +2167,18 @@ int vsock_core_register(const struct
> > vsock_transport *t, int features)
> > t_dgram = t;
> > }
> >
> > + if (features & VSOCK_TRANSPORT_F_LOCAL) {
> > + if (t_local) {
> > + err = -EBUSY;
> > + goto err_busy;
> > + }
> > + t_local = t;
> > + }
> > +
> > transport_h2g = t_h2g;
> > transport_g2h = t_g2h;
> > transport_dgram = t_dgram;
> > + transport_local = t_local;
> >
> > err_busy:
> > mutex_unlock(&vsock_register_mutex)...
2014 May 01
1
[PATCH] vsock: Make transport the proto owner
...= &vsock_device_ops,
};
-static int __vsock_core_init(void)
+int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
{
- int err;
+ int err = mutex_lock_interruptible(&vsock_register_mutex);
+
+ if (err)
+ return err;
+
+ if (transport) {
+ err = -EBUSY;
+ goto err_busy;
+ }
+
+ /* Transport must be the owner of the protocol so that it can't
+ * unload while there are open sockets.
+ */
+ vsock_proto.owner = owner;
+ transport = t;
vsock_init_tables();
@@ -1951,36 +1965,19 @@ static int __vsock_core_init(void)
goto err_unregister_proto;
}
+ mute...
2014 May 01
1
[PATCH] vsock: Make transport the proto owner
...= &vsock_device_ops,
};
-static int __vsock_core_init(void)
+int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
{
- int err;
+ int err = mutex_lock_interruptible(&vsock_register_mutex);
+
+ if (err)
+ return err;
+
+ if (transport) {
+ err = -EBUSY;
+ goto err_busy;
+ }
+
+ /* Transport must be the owner of the protocol so that it can't
+ * unload while there are open sockets.
+ */
+ vsock_proto.owner = owner;
+ transport = t;
vsock_init_tables();
@@ -1951,36 +1965,19 @@ static int __vsock_core_init(void)
goto err_unregister_proto;
}
+ mute...
2019 Sep 27
0
[RFC PATCH 11/13] vsock: add 'transport_hg' to handle g2h\h2g transports
...if we are
* in a VMware guest, but we are not able to do the same for the host.
*/
- if (t->features & VSOCK_TRANSPORT_F_H2G) {
+ if ((t->features & VSOCK_TRANSPORT_F_H2G) &&
+ (t->features & VSOCK_TRANSPORT_F_G2H)) {
+ if (t_hg) {
+ err = -EBUSY;
+ goto err_busy;
+ }
+ t_hg = t;
+ } else if (t->features & VSOCK_TRANSPORT_F_H2G) {
if (t_h2g) {
err = -EBUSY;
goto err_busy;
@@ -2132,6 +2147,7 @@ int vsock_core_register(const struct vsock_transport *t)
}
transport_h2g = t_h2g;
+ transport_hg = t_hg;
transport_g2h = t_g2h;
transpor...
2019 Nov 21
0
[PATCH net-next 3/6] vsock: add local transport support in the vsock core
...t; > > vsock_transport *t, int features)
> > > > t_dgram = t;
> > > > }
> > > >
> > > > + if (features & VSOCK_TRANSPORT_F_LOCAL) {
> > > > + if (t_local) {
> > > > + err = -EBUSY;
> > > > + goto err_busy;
> > > > + }
> > > > + t_local = t;
> > > > + }
> > > > +
> > > > transport_h2g = t_h2g;
> > > > transport_g2h = t_g2h;
> > > > transport_dgram = t_dgram;
> > > > + transport_local = t_local;
>...
2019 Sep 27
0
[RFC PATCH 04/13] vsock: add 'transport' member in the struct vsock_sock
...!= 0)
+ if (put_user(transport_single->get_local_cid(), p) != 0)
retval = -EFAULT;
break;
@@ -1911,7 +1931,7 @@ int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
if (err)
return err;
- if (transport) {
+ if (transport_single) {
err = -EBUSY;
goto err_busy;
}
@@ -1920,7 +1940,7 @@ int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
* unload while there are open sockets.
*/
vsock_proto.owner = owner;
- transport = t;
+ transport_single = t;
vsock_device.minor = MISC_DYNAMIC_MINOR;
err = misc_register(&vsock...
2019 Oct 23
0
[PATCH net-next 04/14] vsock: add 'transport' member in the struct vsock_sock
...!= 0)
+ if (put_user(transport_single->get_local_cid(), p) != 0)
retval = -EFAULT;
break;
@@ -1919,7 +1939,7 @@ int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
if (err)
return err;
- if (transport) {
+ if (transport_single) {
err = -EBUSY;
goto err_busy;
}
@@ -1928,7 +1948,7 @@ int __vsock_core_init(const struct vsock_transport *t, struct module *owner)
* unload while there are open sockets.
*/
vsock_proto.owner = owner;
- transport = t;
+ transport_single = t;
vsock_device.minor = MISC_DYNAMIC_MINOR;
err = misc_register(&vsock...
2019 Sep 27
29
[RFC PATCH 00/13] vsock: add multi-transports support
Hi all,
this series adds the multi-transports support to vsock, following
this proposal:
https://www.spinics.net/lists/netdev/msg575792.html
With the multi-transports support, we can use vsock with nested VMs
(using also different hypervisors) loading both guest->host and
host->guest transports at the same time.
Before this series, vmci-transport supported this behavior but only
using
2019 Sep 27
29
[RFC PATCH 00/13] vsock: add multi-transports support
Hi all,
this series adds the multi-transports support to vsock, following
this proposal:
https://www.spinics.net/lists/netdev/msg575792.html
With the multi-transports support, we can use vsock with nested VMs
(using also different hypervisors) loading both guest->host and
host->guest transports at the same time.
Before this series, vmci-transport supported this behavior but only
using
2019 Nov 14
15
[PATCH net-next v2 00/15] vsock: add multi-transports support
Most of the patches are reviewed by Dexuan, Stefan, and Jorgen.
The following patches need reviews:
- [11/15] vsock: add multi-transports support
- [12/15] vsock/vmci: register vmci_transport only when VMCI guest/host
are active
- [15/15] vhost/vsock: refuse CID assigned to the guest->host transport
RFC: https://patchwork.ozlabs.org/cover/1168442/
v1:
2019 Dec 10
7
[PATCH net-next v2 0/6] vsock: add local transport support
v2:
- style fixes [Dave]
- removed RCU sync and changed 'the_vsock_loopback' in a global
static variable [Stefan]
- use G2H transport when local transport is not loaded and remote cid
is VMADDR_CID_LOCAL [Stefan]
- rebased on net-next
v1: https://patchwork.kernel.org/cover/11251735/
This series introduces a new transport (vsock_loopback) to handle
local communication.
This
2019 Oct 23
33
[PATCH net-next 00/14] vsock: add multi-transports support
This series adds the multi-transports support to vsock, following
this proposal: https://www.spinics.net/lists/netdev/msg575792.html
With the multi-transports support, we can use VSOCK with nested VMs
(using also different hypervisors) loading both guest->host and
host->guest transports at the same time.
Before this series, vmci-transport supported this behavior but only
using VMware