> From: Stefano Garzarella <sgarz...@redhat.com>
> Sent: Wednesday, May 27, 2020 9:57 AM
> 
> The accept(2) is an "input" socket interface, so we should use
> SO_RCVTIMEO instead of SO_SNDTIMEO to set the timeout.
> 
> So this patch replace sock_sndtimeo() with sock_rcvtimeo() to
> use the right timeout in the vsock_accept().
> 
> Fixes: d021c344051a ("VSOCK: Introduce VM Sockets")
> Signed-off-by: Stefano Garzarella <sgarz...@redhat.com>
> ---
>  net/vmw_vsock/af_vsock.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/net/vmw_vsock/af_vsock.c b/net/vmw_vsock/af_vsock.c
> index a5f28708e0e7..626bf9044418 100644
> --- a/net/vmw_vsock/af_vsock.c
> +++ b/net/vmw_vsock/af_vsock.c
> @@ -1408,7 +1408,7 @@ static int vsock_accept(struct socket *sock, struct
> socket *newsock, int flags,
>       /* Wait for children sockets to appear; these are the new sockets
>        * created upon connection establishment.
>        */
> -     timeout = sock_sndtimeo(listener, flags & O_NONBLOCK);
> +     timeout = sock_rcvtimeo(listener, flags & O_NONBLOCK);
>       prepare_to_wait(sk_sleep(listener), &wait, TASK_INTERRUPTIBLE);
> 
>       while ((connected = vsock_dequeue_accept(listener)) == NULL &&
> --
> 2.25.4

Thanks for fixing this!

Reviewed-by: Jorgen Hansen <jhan...@vmware.com>

Reply via email to