Re: [RFC v1 0/6] virtio/vsock: introduce SOCK_DGRAM support

From: Stefano Garzarella
Date: Fri Jun 18 2021 - 05:35:45 EST

On Wed, Jun 09, 2021 at 11:24:52PM +0000, Jiang Wang wrote:
This patchset implements support of SOCK_DGRAM for virtio

Datagram sockets are connectionless and unreliable. To avoid unfair contention
with stream and other sockets, add two more virtqueues and
a new feature bit to indicate if those two new queues exist or not.

Dgram does not use the existing credit update mechanism for
stream sockets. When sending from the guest/driver, sending packets
synchronously, so the sender will get an error when the virtqueue is full.
When sending from the host/device, send packets asynchronously
because the descriptor memory belongs to the corresponding QEMU

The virtio spec patch is here:

For those who prefer git repo, here is the link for the linux kernel:

qemu patch link:

To do:
1. use skb when receiving packets
2. support multiple transport
3. support mergeable rx buffer

Jiang, I'll do a fast review, but I think is better to rebase on net-next since SEQPACKET support is now merged.

Please also run ./scripts/, there are a lot of issues.

I'll leave some simple comments in the patches, but I prefer to do a deep review after the rebase and the dynamic handling of DGRAM.