On Sun, Mar 07, 2021 at 09:03:41PM +0300, Arseny Krasnov wrote:
This adds handling of SEQPACKET bit: if guest sets features with
this bit cleared, then SOCK_SEQPACKET support will be disabled.

Signed-off-by: Arseny Krasnov <arseny.kras...@kaspersky.com>
---
drivers/vhost/vsock.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

I think is better to move this patch after we set the seqpackets ops,
so we are really able to handle SEQPACKET traffic.


diff --git a/drivers/vhost/vsock.c b/drivers/vhost/vsock.c
index 5e78fb719602..3b0a50e6de12 100644
--- a/drivers/vhost/vsock.c
+++ b/drivers/vhost/vsock.c
@@ -31,7 +31,8 @@

enum {
        VHOST_VSOCK_FEATURES = VHOST_FEATURES |
-                              (1ULL << VIRTIO_F_ACCESS_PLATFORM)
+                              (1ULL << VIRTIO_F_ACCESS_PLATFORM) |
+                              (1ULL << VIRTIO_VSOCK_F_SEQPACKET)
};

enum {
@@ -785,6 +786,9 @@ static int vhost_vsock_set_features(struct vhost_vsock 
*vsock, u64 features)
                        goto err;
        }

+       if (features & (1ULL << VIRTIO_VSOCK_F_SEQPACKET))
+               vhost_transport.seqpacket_allow = true;
+
        for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) {
                vq = &vsock->vqs[i];
                mutex_lock(&vq->mutex);
--
2.25.1


Reply via email to