Re: [PATCH v5] virtio/vsock: replace virtio_vsock_pkt with sk_buff

From: Stefano Garzarella
Date: Mon Dec 05 2022 - 07:23:55 EST


On Fri, Dec 02, 2022 at 09:35:18AM -0800, Bobby Eshleman wrote:
This commit changes virtio/vsock to use sk_buff instead of
virtio_vsock_pkt. Beyond better conforming to other net code, using
sk_buff allows vsock to use sk_buff-dependent features in the future
(such as sockmap) and improves throughput.

This patch introduces the following performance changes:

Tool/Config: uperf w/ 64 threads, SOCK_STREAM
Test Runs: 5, mean of results
Before: commit 95ec6bce2a0b ("Merge branch 'net-ipa-more-endpoints'")

Test: 64KB, g2h
Before: 21.63 Gb/s
After: 25.59 Gb/s (+18%)

Test: 16B, g2h
Before: 11.86 Mb/s
After: 17.41 Mb/s (+46%)

Test: 64KB, h2g
Before: 2.15 Gb/s
After: 3.6 Gb/s (+67%)

Test: 16B, h2g
Before: 14.38 Mb/s
After: 18.43 Mb/s (+28%)

Signed-off-by: Bobby Eshleman <bobby.eshleman@xxxxxxxxxxxxx>
---
Changes in v5:
- last_skb instead of skb: last_hdr->len = cpu_to_le32(last_skb->len)

With this issue fixed, I confirm that all the tests passed:

Reviewed-by: Stefano Garzarella <sgarzare@xxxxxxxxxx>


As pointed out in v4, this is net-next material, so you should use the net-next tag and base the patch on the net-next tree:
https://www.kernel.org/doc/html/v6.0/process/maintainer-netdev.html#netdev-faq

I locally applied the patch on net-next and everything is fine, so maybe the maintainers can apply it, otherwise you should resend it with the right tag.
Ah, in that case I suggest you send it before the next merge window opens (I guess next week), because net-next closes and you'll have to wait for the next cycle.

Thanks,
Stefano