While reviewing the patch posted by Yiqi Sun [1] to fix an issue in virtio_transport_build_skb(), I discovered another issue related to the offset and length of the payload to be copied in the new skb. This was introduced when we did the skb conversion, and fixed by patch 1.
Patch 2 fixes the issue found by Yiqi Sun in a different way: using iov_iter_kvec() to properly initialize all the iov_iter fields and removing the linear vs non-linear split like we alredy do in vhost-vsock. It could have been a single patch, but since there were two affected commits, I decided to keep the fixes separate. [1] https://lore.kernel.org/netdev/[email protected]/ Stefano Garzarella (2): vsock/virtio: fix length and offset in tap skb for split packets vsock/virtio: fix empty payload in tap skb for non-linear buffers net/vmw_vsock/virtio_transport_common.c | 47 +++++++++---------------- 1 file changed, 16 insertions(+), 31 deletions(-) -- 2.54.0

