On 5/7/25 5:14 PM, Konstantin Shkolnyy wrote: > These tests: > "SOCK_STREAM ioctl(SIOCOUTQ) 0 unsent bytes" > "SOCK_SEQPACKET ioctl(SIOCOUTQ) 0 unsent bytes" > output: "Unexpected 'SIOCOUTQ' value, expected 0, got 64 (CLIENT)". > > They test that the SIOCOUTQ ioctl reports 0 unsent bytes after the data > have been received by the other side. However, sometimes there is a delay > in updating this "unsent bytes" counter, and the test fails even though > the counter properly goes to 0 several milliseconds later. > > The delay occurs in the kernel because the used buffer notification > callback virtio_vsock_tx_done(), called upon receipt of the data by the > other side, doesn't update the counter itself. It delegates that to > a kernel thread (via vsock->tx_work). Sometimes that thread is delayed > more than the test expects. > > Change the test to poll SIOCOUTQ until it returns 0 or a timeout occurs. > > Signed-off-by: Konstantin Shkolnyy <k...@linux.ibm.com>
Could you please provide a suitable fixes tag? No need to repost, just reply here. Thanks! Paolo