Messages in this thread | | | Date | Thu, 27 Jul 2023 10:54:51 +0200 | From | Stefano Garzarella <> | Subject | Re: [PATCH net-next v3 4/4] vsock/virtio: MSG_ZEROCOPY flag support |
| |
On Thu, Jul 27, 2023 at 11:32:00AM +0300, Arseniy Krasnov wrote: >On 25.07.2023 15:28, Stefano Garzarella wrote: >> On Tue, Jul 25, 2023 at 12:16:11PM +0300, Arseniy Krasnov wrote: >>> On 25.07.2023 11:46, Arseniy Krasnov wrote: >>>> On 25.07.2023 11:43, Stefano Garzarella wrote: >>>>> On Fri, Jul 21, 2023 at 08:09:03AM +0300, Arseniy Krasnov wrote:
[...]
>>>>>>> + t = vsock_core_get_transport(info->vsk); >>>>>>> >>>>>>> - if (msg_data_left(info->msg) == 0 && >>>>>>> - info->type == VIRTIO_VSOCK_TYPE_SEQPACKET) { >>>>>>> - hdr->flags |= cpu_to_le32(VIRTIO_VSOCK_SEQ_EOM); >>>>>>> + if (t->msgzerocopy_check_iov && >>>>>>> + !t->msgzerocopy_check_iov(iov_iter)) >>>>>>> + return false; >>>>> >>>>> I'd avoid adding a new transport callback used only internally in virtio >>>>> transports. >>>> >>>> Ok, I see. >>>> >>>>> >>>>> Usually the transport callbacks are used in af_vsock.c, if we need a >>>>> callback just for virtio transports, maybe better to add it in struct >>>>> virtio_vsock_pkt_info or struct virtio_vsock_sock. >>> >>> Hm, may be I just need to move this callback from 'struct vsock_transport' to parent 'struct virtio_transport', >>> after 'send_pkt' callback. In this case: >>> 1) AF_VSOCK part is not touched. >>> 2) This callback stays in 'virtio_transport.c' and is set also in this file. >>> vhost and loopback are unchanged - only 'send_pkt' still enabled in both >>> files for these two transports. >> >> Yep, this could also work! >> >> Stefano > >Great! I'll send this implementation when this patchset for MSG_PEEK will be merged >to net-next as both conflicts with each other. > >https://lore.kernel.org/netdev/20230726060150-mutt-send-email-mst@kernel.org/T/#m56f3b850361a412735616145162d2d9df25f6350
Ack!
Thanks, Stefano
| |