Displaying 8 results from an estimated 8 matches for "vsock_loopback_send_pkt".
2019 Nov 21
2
[PATCH net-next 4/6] vsock: add vsock_loopback transport
...gt; > > +static struct vsock_loopback *the_vsock_loopback;
> >
> > the_vsock_loopback could be a static global variable (not a pointer) and
> > vsock_loopback_workqueue could also be included in the struct.
> >
> > The RCU pointer is really a way to synchronize vsock_loopback_send_pkt()
> > and vsock_loopback_cancel_pkt() with module exit. There is no other
> > reason for using a pointer.
> >
> > It's cleaner to implement the synchronization once in af_vsock.c (or
> > virtio_transport_common.c) instead of making each transport do it.
> >...
2019 Nov 21
2
[PATCH net-next 4/6] vsock: add vsock_loopback transport
...gt; > > +static struct vsock_loopback *the_vsock_loopback;
> >
> > the_vsock_loopback could be a static global variable (not a pointer) and
> > vsock_loopback_workqueue could also be included in the struct.
> >
> > The RCU pointer is really a way to synchronize vsock_loopback_send_pkt()
> > and vsock_loopback_cancel_pkt() with module exit. There is no other
> > reason for using a pointer.
> >
> > It's cleaner to implement the synchronization once in af_vsock.c (or
> > virtio_transport_common.c) instead of making each transport do it.
> >...
2019 Nov 21
2
[PATCH net-next 4/6] vsock: add vsock_loopback transport
...+static struct workqueue_struct *vsock_loopback_workqueue;
> +static struct vsock_loopback *the_vsock_loopback;
the_vsock_loopback could be a static global variable (not a pointer) and
vsock_loopback_workqueue could also be included in the struct.
The RCU pointer is really a way to synchronize vsock_loopback_send_pkt()
and vsock_loopback_cancel_pkt() with module exit. There is no other
reason for using a pointer.
It's cleaner to implement the synchronization once in af_vsock.c (or
virtio_transport_common.c) instead of making each transport do it.
Maybe try_module_get() and related APIs provide the necessa...
2019 Nov 21
2
[PATCH net-next 4/6] vsock: add vsock_loopback transport
...+static struct workqueue_struct *vsock_loopback_workqueue;
> +static struct vsock_loopback *the_vsock_loopback;
the_vsock_loopback could be a static global variable (not a pointer) and
vsock_loopback_workqueue could also be included in the struct.
The RCU pointer is really a way to synchronize vsock_loopback_send_pkt()
and vsock_loopback_cancel_pkt() with module exit. There is no other
reason for using a pointer.
It's cleaner to implement the synchronization once in af_vsock.c (or
virtio_transport_common.c) instead of making each transport do it.
Maybe try_module_get() and related APIs provide the necessa...
2023 Apr 13
0
[RFC PATCH v1] vsock/loopback: don't disable irqs for queue access
...rella <sgarzare at redhat.com>
Thanks,
Stefano
>
>diff --git a/net/vmw_vsock/vsock_loopback.c b/net/vmw_vsock/vsock_loopback.c
>index e3afc0c866f5..5c6360df1f31 100644
>--- a/net/vmw_vsock/vsock_loopback.c
>+++ b/net/vmw_vsock/vsock_loopback.c
>@@ -31,8 +31,7 @@ static int vsock_loopback_send_pkt(struct sk_buff *skb)
> struct vsock_loopback *vsock = &the_vsock_loopback;
> int len = skb->len;
>
>- skb_queue_tail(&vsock->pkt_queue, skb);
>-
>+ virtio_vsock_skb_queue_tail(&vsock->pkt_queue, skb);
> queue_work(vsock->workqueue, &vsock->pkt_...
2019 Nov 22
0
[PATCH net-next 4/6] vsock: add vsock_loopback transport
...uct vsock_loopback *the_vsock_loopback;
> > >
> > > the_vsock_loopback could be a static global variable (not a pointer) and
> > > vsock_loopback_workqueue could also be included in the struct.
> > >
> > > The RCU pointer is really a way to synchronize vsock_loopback_send_pkt()
> > > and vsock_loopback_cancel_pkt() with module exit. There is no other
> > > reason for using a pointer.
> > >
> > > It's cleaner to implement the synchronization once in af_vsock.c (or
> > > virtio_transport_common.c) instead of making each t...
2019 Nov 21
0
[PATCH net-next 4/6] vsock: add vsock_loopback transport
...t *vsock_loopback_workqueue;
> > +static struct vsock_loopback *the_vsock_loopback;
>
> the_vsock_loopback could be a static global variable (not a pointer) and
> vsock_loopback_workqueue could also be included in the struct.
>
> The RCU pointer is really a way to synchronize vsock_loopback_send_pkt()
> and vsock_loopback_cancel_pkt() with module exit. There is no other
> reason for using a pointer.
>
> It's cleaner to implement the synchronization once in af_vsock.c (or
> virtio_transport_common.c) instead of making each transport do it.
> Maybe try_module_get() and re...
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