diff options
| author | Raf Dickson <rafdog35@gmail.com> | 2026-06-12 07:58:42 +0300 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2026-06-13 20:36:37 +0300 |
| commit | 4ff2e84ff1b33d79fa0e3ae355ce4a334908ef9a (patch) | |
| tree | 3bc428b87d875014c0693372fb948faa426db9f0 | |
| parent | 0d4bd1c5629a8435538c312e2f4a1f13d0a8bd34 (diff) | |
| download | linux-4ff2e84ff1b33d79fa0e3ae355ce4a334908ef9a.tar.xz | |
vsock: use sk_acceptq_is_full() helper in all transports
Replace the open-coded backlog check with sk_acceptq_is_full().
The helper uses > instead of >=, which is the correct comparison
per commit 64a146513f8f ("[NET]: Revert incorrect accept queue
backlog changes."), and adds READ_ONCE() for proper memory ordering.
Suggested-by: Stefano Garzarella <sgarzare@redhat.com>
Signed-off-by: Raf Dickson <rafdog35@gmail.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Reviewed-by: Luigi Leonardi <leonardi@redhat.com>
Link: https://patch.msgid.link/20260612045842.122207-1-rafdog35@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
| -rw-r--r-- | net/vmw_vsock/hyperv_transport.c | 2 | ||||
| -rw-r--r-- | net/vmw_vsock/vmci_transport.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/net/vmw_vsock/hyperv_transport.c b/net/vmw_vsock/hyperv_transport.c index b3394946b2ed..e6adbc47011d 100644 --- a/net/vmw_vsock/hyperv_transport.c +++ b/net/vmw_vsock/hyperv_transport.c @@ -323,7 +323,7 @@ static void hvs_open_connection(struct vmbus_channel *chan) goto out; if (conn_from_host) { - if (sk->sk_ack_backlog >= sk->sk_max_ack_backlog) + if (sk_acceptq_is_full(sk)) goto out; new = vsock_create_connected(sk); diff --git a/net/vmw_vsock/vmci_transport.c b/net/vmw_vsock/vmci_transport.c index 91516488a742..56503bee3165 100644 --- a/net/vmw_vsock/vmci_transport.c +++ b/net/vmw_vsock/vmci_transport.c @@ -1010,7 +1010,7 @@ static int vmci_transport_recv_listen(struct sock *sk, * reset. Otherwise we create and initialize a child socket and reply * with a connection negotiation. */ - if (sk->sk_ack_backlog >= sk->sk_max_ack_backlog) { + if (sk_acceptq_is_full(sk)) { vmci_transport_reply_reset(pkt); return -ECONNREFUSED; } |
