On 2025/7/7 21:44, Stefano Garzarella wrote: > On Sun, Jul 06, 2025 at 12:36:28PM +0800, Xuewei Niu wrote: >> Introduce SIOCINQ ioctl support for vsock, indicating the length of unread >> bytes. >> >> Similar with SIOCOUTQ ioctl, the information is transport-dependent. >> >> The first patch adds SIOCINQ ioctl support in AF_VSOCK. >> >> Thanks to @dexuan, the second patch is to fix the issue where hyper-v >> `hvs_stream_has_data()` doesn't return the readable bytes. >> >> The third patch wraps the ioctl into `ioctl_int()`, which implements a >> retry mechanism to prevent immediate failure. >> >> 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. >> >> v2->v3: >> https://lore.kernel.org/netdev/20250613031152.1076725-1-niuxuewei.nxw@xxxxxxxxxxxx/ >> - Update commit messages following the guidelines >> - Remove `unread_bytes` callback and reuse `vsock_stream_has_data()` >> - Move the tests to the end of array >> - Split the refactoring patch >> - Include <sys/ioctl.h> in the util.c >> >> v3->v4: >> https://lore.kernel.org/netdev/20250617045347.1233128-1-niuxuewei.nxw@xxxxxxxxxxxx/ >> - Hyper-v `hvs_stream_has_data()` returns the readable bytes >> - Skip testing the null value for `actual` (int pointer) >> - Rename `ioctl_int()` to `vsock_ioctl_int()` >> - Fix a typo and a format issue in comments >> - Remove the `RECEIVED` barrier. >> - The return type of `vsock_ioctl_int()` has been changed to bool >> >> v4->v5: >> https://lore.kernel.org/netdev/20250630075727.210462-1-niuxuewei.nxw@xxxxxxxxxxxx/ >> - Put the hyper-v fix before the SIOCINQ ioctl implementation. >> - Remove my SOB from the hyper-v fix patch. > > Has I mentioned, that was not the issue, but the wrong Author. I see it now. I'll update the author in v6. > There are also other issue, not sure how you're sending them, but I guess there are some issues with you `git format-patch` configuration: I was using my personal email. I have changed to the right email now. Hope everything goes fine with the next version. Thanks, Xuewei > > $ ./scripts/checkpatch.pl -g net-next..HEAD --codespell > ----------------------------------------------------------------------------------- > Commit ed36075e04ec ("hv_sock: Return the readable bytes in hvs_stream_has_data()") > ----------------------------------------------------------------------------------- > WARNING: 'multpile' may be misspelled - perhaps 'multiple'? > #23: > Note: there may be multpile incoming hv_sock packets pending in the > ^^^^^^^^ > > ERROR: Missing Signed-off-by: line by nominal patch author 'Xuewei Niu <niuxuewei97@xxxxxxxxx>' > > total: 1 errors, 1 warnings, 0 checks, 29 lines checked > > NOTE: For some of the reported defects, checkpatch may be able to > mechanically convert to the typical style using --fix or --fix-inplace. > > Commit ed36075e04ec ("hv_sock: Return the readable bytes in hvs_stream_has_data()") has style problems, please review. > ------------------------------------------------------------ > Commit 4e5c39e373fa ("vsock: Add support for SIOCINQ ioctl") > ------------------------------------------------------------ > WARNING: From:/Signed-off-by: email address mismatch: 'From: Xuewei Niu <niuxuewei97@xxxxxxxxx>' != 'Signed-off-by: Xuewei Niu <niuxuewei.nxw@xxxxxxxxxxxx>' > > total: 0 errors, 1 warnings, 0 checks, 28 lines checked > > NOTE: For some of the reported defects, checkpatch may be able to > mechanically convert to the typical style using --fix or --fix-inplace. > > Commit 4e5c39e373fa ("vsock: Add support for SIOCINQ ioctl") has style problems, please review. > ------------------------------------------------------------------------ > Commit 3eb323b2d9f4 ("test/vsock: Add retry mechanism to ioctl wrapper") > ------------------------------------------------------------------------ > WARNING: From:/Signed-off-by: email address mismatch: 'From: Xuewei Niu <niuxuewei97@xxxxxxxxx>' != 'Signed-off-by: Xuewei Niu <niuxuewei.nxw@xxxxxxxxxxxx>' > > total: 0 errors, 1 warnings, 62 lines checked > > NOTE: For some of the reported defects, checkpatch may be able to > mechanically convert to the typical style using --fix or --fix-inplace. > > Commit 3eb323b2d9f4 ("test/vsock: Add retry mechanism to ioctl wrapper") has style problems, please review. > > NOTE: If any of the errors are false positives, please report > them to the maintainer, see CHECKPATCH in MAINTAINERS. > >> - Move the `need_refill` initialization into the `case 1` block. >> - Remove the `actual` argument from `vsock_ioctl_int()`. >> - Replace `TIOCINQ` with `SIOCINQ`. >> >> --- >> Xuewei Niu (4): >> hv_sock: Return the readable bytes in hvs_stream_has_data() >> vsock: Add support for SIOCINQ ioctl >> test/vsock: Add retry mechanism to ioctl wrapper >> test/vsock: Add ioctl SIOCINQ tests >> >> net/vmw_vsock/af_vsock.c | 22 +++++++++++ >> net/vmw_vsock/hyperv_transport.c | 17 +++++++-- >> tools/testing/vsock/util.c | 30 ++++++++++----- >> tools/testing/vsock/util.h | 1 + >> tools/testing/vsock/vsock_test.c | 79 ++++++++++++++++++++++++++++++++++++++++ >> 5 files changed, 137 insertions(+), 12 deletions(-) >> --- >> base-commit: 5f712c3877f99d5b5e4d011955c6467ae0e535a6 >> change-id: 20250703-siocinq-9e2907939806 >> >> Best regards, >> -- >> Xuewei Niu <niuxuewei.nxw@xxxxxxxxxxxx> >>