Conversation

... not every day do i get an opportunity to trace a bug from an application i was simply trying to use, all the way through hyper, tokio, mio, and std::net_imp into some deeper abyss what possessed the environment i'm running to return -ENOENT from getsockname()? i have no idea
5
179
instead i got (with the bind() call succeeding on strace): > thread 'tokio-runtime-worker' panicked at 'error binding to 0.0.0.0:8082: error creating server listener: File not found. (os error 2) which makes absolutely no sense however you may look at it
1
55
Replying to and
It's pretty common. It prevents programs from screwing themselves over with ptrace because they fail to attach. Some programs think it's a good idea to ptrace themselves for one reason or another and screw it up in a way that causes races, screwed up signal handling, etc.
1
Not relevant here but this is an actual thing. It can also hide race conditions as you suggested since it causes serialization for system calls and other events it's catching. Seen this kind of thing quite a lot. Try to debug something and the race condition stops happening.
1
1