Hello: This series was applied to netdev/net-next.git (master) by Paolo Abeni <pabeni@xxxxxxxxxx>: On Fri, 19 Aug 2022 05:21:58 +0000 you wrote: > Hello, > > This patchset includes some updates for SO_RCVLOWAT: > > 1) af_vsock: > During my experiments with zerocopy receive, i found, that in some > cases, poll() implementation violates POSIX: when socket has non- > default SO_RCVLOWAT(e.g. not 1), poll() will always set POLLIN and > POLLRDNORM bits in 'revents' even number of bytes available to read > on socket is smaller than SO_RCVLOWAT value. In this case,user sees > POLLIN flag and then tries to read data(for example using 'read()' > call), but read call will be blocked, because SO_RCVLOWAT logic is > supported in dequeue loop in af_vsock.c. But the same time, POSIX > requires that: > > [...] Here is the summary with links: - [net-next,v4,1/9] vsock: SO_RCVLOWAT transport set callback https://git.kernel.org/netdev/net-next/c/e38f22c860ed - [net-next,v4,2/9] hv_sock: disable SO_RCVLOWAT support https://git.kernel.org/netdev/net-next/c/24764f8d3c31 - [net-next,v4,3/9] virtio/vsock: use 'target' in notify_poll_in callback https://git.kernel.org/netdev/net-next/c/e7a3266c9167 - [net-next,v4,4/9] vmci/vsock: use 'target' in notify_poll_in callback https://git.kernel.org/netdev/net-next/c/a274f6ff3c5c - [net-next,v4,5/9] vsock: pass sock_rcvlowat to notify_poll_in as target https://git.kernel.org/netdev/net-next/c/ee0b3843a269 - [net-next,v4,6/9] vsock: add API call for data ready https://git.kernel.org/netdev/net-next/c/f2fdcf67aceb - [net-next,v4,7/9] virtio/vsock: check SO_RCVLOWAT before wake up reader https://git.kernel.org/netdev/net-next/c/39f1ed33a448 - [net-next,v4,8/9] vmci/vsock: check SO_RCVLOWAT before wake up reader https://git.kernel.org/netdev/net-next/c/e061aed99855 - [net-next,v4,9/9] vsock_test: POLLIN + SO_RCVLOWAT test https://git.kernel.org/netdev/net-next/c/b1346338fbae You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html