-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
libuv 1.47.0: tcp_connect6_link_local fails on Fedora (all arches) #4211
Comments
That's a newly added test that checks that connecting to a link-local address works (fe80::/10, fe80::0bad:babe in particular.) That the connect() system call fails with EINVAL makes me suspect it's one of a few reasons. Maybe you can check?
|
From my local machine (aarch64 VM):
This actually results in a different error than we're getting on the build machines:
As far as the link-local traffic, I'm using an out-of-the-box configuration for the firewall:
|
Sorry, I just realized the information above was incomplete. It appears that it works fine in that configuration. I had actually had a VPN connection in place during the failure case, which adds a second There's definitely a different error for the builders, though: they have limited network capability to ensure reproducible builds (the network is "up", but outgoing communication is blocked. I don't know all the details.) When built in "mock", the error is as I originally reported:
I can modify our build to skip this test if the test is faulty, but I'm concerned that it's revealing a real bug since this is new functionality in libuv. |
The segmentation fault when I have a VPN connected is caused by a NULL-dereference. I've submitted #4218 to catch that case and avoid it. I still haven't been able to entirely track down the EINVAL issue, but I can confirm that it's being thrown by the libc call to |
Can you strace the connect call? I'd like to see what interface libuv picked (enp0s5?) |
Here's a full strace of This was done with a build of libuv that I created with
|
I'll fix up the test to detect that condition. Anyone have opinions on whether to keep returning that EINVAL immediately or pass it on to the callback? It's morally equivalent to ENETUNREACH and we could report it as such. |
Looks like it's related to #4107
For build logs and detailed hardware info, see https://koji.fedoraproject.org/koji/taskinfo?taskID=108752390
The text was updated successfully, but these errors were encountered: