Message ID | 20230603204939.1598818-13-AVKrasnov@sberdevices.ru (mailing list archive) |
---|---|
State | RFC |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | vsock: MSG_ZEROCOPY flag support | expand |
On Sat, Jun 03, 2023 at 11:49:34PM +0300, Arseniy Krasnov wrote: >Add 'msgzerocopy_allow()' callback for loopback transport. > >Signed-off-by: Arseniy Krasnov <AVKrasnov@sberdevices.ru> >--- > net/vmw_vsock/vsock_loopback.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > >diff --git a/net/vmw_vsock/vsock_loopback.c b/net/vmw_vsock/vsock_loopback.c >index 5c6360df1f31..a2e4aeda2d92 100644 >--- a/net/vmw_vsock/vsock_loopback.c >+++ b/net/vmw_vsock/vsock_loopback.c >@@ -47,6 +47,7 @@ static int vsock_loopback_cancel_pkt(struct vsock_sock *vsk) > } > > static bool vsock_loopback_seqpacket_allow(u32 remote_cid); >+static bool vsock_loopback_msgzerocopy_allow(void); I don't know why we did this for `vsock_loopback_seqpacket_allow`, but can we just put the implementation here? > > static struct virtio_transport loopback_transport = { > .transport = { >@@ -92,11 +93,18 @@ static struct virtio_transport loopback_transport = { > .notify_buffer_size = virtio_transport_notify_buffer_size, > > .read_skb = virtio_transport_read_skb, >+ >+ .msgzerocopy_allow = vsock_loopback_msgzerocopy_allow, Ditto the moving. > }, > > .send_pkt = vsock_loopback_send_pkt, > }; > >+static bool vsock_loopback_msgzerocopy_allow(void) >+{ >+ return true; >+} >+ > static bool vsock_loopback_seqpacket_allow(u32 remote_cid) > { > return true; >-- >2.25.1 >
diff --git a/net/vmw_vsock/vsock_loopback.c b/net/vmw_vsock/vsock_loopback.c index 5c6360df1f31..a2e4aeda2d92 100644 --- a/net/vmw_vsock/vsock_loopback.c +++ b/net/vmw_vsock/vsock_loopback.c @@ -47,6 +47,7 @@ static int vsock_loopback_cancel_pkt(struct vsock_sock *vsk) } static bool vsock_loopback_seqpacket_allow(u32 remote_cid); +static bool vsock_loopback_msgzerocopy_allow(void); static struct virtio_transport loopback_transport = { .transport = { @@ -92,11 +93,18 @@ static struct virtio_transport loopback_transport = { .notify_buffer_size = virtio_transport_notify_buffer_size, .read_skb = virtio_transport_read_skb, + + .msgzerocopy_allow = vsock_loopback_msgzerocopy_allow, }, .send_pkt = vsock_loopback_send_pkt, }; +static bool vsock_loopback_msgzerocopy_allow(void) +{ + return true; +} + static bool vsock_loopback_seqpacket_allow(u32 remote_cid) { return true;
Add 'msgzerocopy_allow()' callback for loopback transport. Signed-off-by: Arseniy Krasnov <AVKrasnov@sberdevices.ru> --- net/vmw_vsock/vsock_loopback.c | 8 ++++++++ 1 file changed, 8 insertions(+)