On Wed, Aug 03, 2022 at 01:55:36PM +0000, Arseniy Krasnov wrote:
This callback controls setting of POLLIN,POLLRDNORM output bits of poll()
syscall,but in some cases,it is incorrectly to set it, when socket has
at least 1 bytes of available data. Use 'target' which is already exists
and equal to sk_rcvlowat in this case.

Little suggestion:
We should update the commit description, since so far 'target' is not equal to sk_rcvlowat.

With that fixed (and adding some spaces after the commas):

Reviewed-by: Stefano Garzarella <sgarz...@redhat.com>


Signed-off-by: Arseniy Krasnov <avkras...@sberdevices.ru>
---
net/vmw_vsock/virtio_transport_common.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/net/vmw_vsock/virtio_transport_common.c 
b/net/vmw_vsock/virtio_transport_common.c
index ec2c2afbf0d0..8f6356ebcdd1 100644
--- a/net/vmw_vsock/virtio_transport_common.c
+++ b/net/vmw_vsock/virtio_transport_common.c
@@ -634,10 +634,7 @@ virtio_transport_notify_poll_in(struct vsock_sock *vsk,
                                size_t target,
                                bool *data_ready_now)
{
-       if (vsock_stream_has_data(vsk))
-               *data_ready_now = true;
-       else
-               *data_ready_now = false;
+       *data_ready_now = vsock_stream_has_data(vsk) >= target;

        return 0;
}
--
2.25.1

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to