Tested-by: Zhou, Jun <[email protected]> 

-----Original Message-----
From: Maxime Coquelin [mailto:[email protected]] 
Sent: Monday, February 1, 2021 5:33 PM
To: [email protected]; Wang, Yinan <[email protected]>; Xia, Chenbo 
<[email protected]>; [email protected]; [email protected]; Ling, 
WeiX <[email protected]>; Jiang, YuX <[email protected]>
Cc: Maxime Coquelin <[email protected]>; Zhou, JunX W 
<[email protected]>
Subject: [PATCH] net/virtio: fix missing listen FD initialization

When running in client mode, the listen file descriptor is not initialized, and 
so has value 0. At destroy time, the listen FD is closed if its value is 
greater than or equal to zero, which causes STDIN to be closed.

Fixes: 949735312f5e ("net/virtio: move vhost-user specifics to its backend") 
Bugzilla ID: 630

Reported-by: Jun W Zhou <[email protected]>
Signed-off-by: Maxime Coquelin <[email protected]>
---
 drivers/net/virtio/virtio_user/vhost_user.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/virtio/virtio_user/vhost_user.c 
b/drivers/net/virtio/virtio_user/vhost_user.c
index ec2c53c8fb..f8569f6e6f 100644
--- a/drivers/net/virtio/virtio_user/vhost_user.c
+++ b/drivers/net/virtio/virtio_user/vhost_user.c
@@ -831,6 +831,7 @@ vhost_user_setup(struct virtio_user_dev *dev)
        dev->backend_data = data;
 
        data->vhostfd = -1;
+       data->listenfd = -1;
 
        fd = socket(AF_UNIX, SOCK_STREAM, 0);
        if (fd < 0) {
--
2.29.2

Reply via email to