-
Notifications
You must be signed in to change notification settings - Fork 135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix broken test_udp_recvmsg_multishot_trunc test #284
Conversation
499ac1c
to
5207c43
Compare
Signed-off-by: Alex Saveau <saveau.alexandre@gmail.com>
Note that I'm running this on a laptop now, but still running the same version of Arch Linux I now get this error:
Looking at the two lines right before this one, I'm pretty sure that this assertion should be equal to 4 and not 5 since I think that After changing that to 4 I get a new error:
I haven't looked into the code but this might be a logical error given the completion events == 5 thing? |
Nah, the test passes on my machine. I feel like io_uring is just broken on your kernel. The 4 events thing is fine, but that index out of bounds is because the kernel returned a buffer we never gave it. Like what? Maybe that was the old mechanism for signaling no more buffers? Lemme try that real quick. |
2f23531
to
4588ea8
Compare
Signed-off-by: Alex Saveau <saveau.alexandre@gmail.com>
Alright, well I think these changes might be wrong (I added a mod the buffer size), but maybe that's how the kernel works? It just monotonically increases the buf ID? I wish this stuff was documented properly 😭. https://lwn.net/Articles/815491/ helped a little bit. |
Test now passes on my machine! |
Sweet! I still feel iffy about the mod thing, but hey if it works I guess. @quininer Do we want to delete the kernel version check code? |
You can keep it, feel free. |
Thank you! |
The bug is that I wasn't using
buf_id
to pick the buffers but rather assumed the kernel would return responses in order.