[PATCH net-next v2 0/3] vsock: Introduce SIOCINQ ioctl support
From: Xuewei Niu
Date: Thu Jun 12 2025 - 23:12:26 EST
This patchset introduces SIOCINQ ioctl support for vsock, indicating the
length of unread bytes.
Similar with SIOCOUTQ ioctl, the information is transport-dependent.
The first patch introduces a new callback, unread_bytes, in vsock
transport, and adds ioctl support in AF_VSOCK.
The second patch implements the SIOCINQ ioctl for all virtio-based transports.
The last one adds two test cases to check the functionality. The changes
have been tested, and the results are as expected.
Signed-off-by: Xuewei Niu <niuxuewei.nxw@xxxxxxxxxxxx>
--
v1->v2:
https://lore.kernel.org/lkml/20250519070649.3063874-1-niuxuewei.nxw@xxxxxxxxxxxx/
- Use net-next tree.
- Reuse `rx_bytes` to count unread bytes.
- Wrap ioctl syscall with an int pointer argument to implement a retry
mechanism.
Xuewei Niu (3):
vsock: Add support for SIOCINQ ioctl
vsock/virtio: Add SIOCINQ support for all virtio based transports
test/vsock: Add ioctl SIOCINQ tests
drivers/vhost/vsock.c | 1 +
include/linux/virtio_vsock.h | 1 +
include/net/af_vsock.h | 2 +
net/vmw_vsock/af_vsock.c | 22 +++++++
net/vmw_vsock/virtio_transport.c | 1 +
net/vmw_vsock/virtio_transport_common.c | 13 ++++
net/vmw_vsock/vsock_loopback.c | 1 +
tools/testing/vsock/util.c | 36 ++++++++---
tools/testing/vsock/util.h | 2 +
tools/testing/vsock/vsock_test.c | 83 ++++++++++++++++++++++++-
10 files changed, 152 insertions(+), 10 deletions(-)
--
2.34.1