IPv6addr: expect ping/pong delay
Under heavy network load, the echo response to an echo request that was
just sent may not immediately be available for reading, with
recvmsg(MSG_DONTWAIT) failing with EAGAIN. This leads to occasional
false positive "not running" events.
This wraps the recvmsg() within a poll() loop with a short timeout (10
ms) and retries reading the echo response up to 3 times, in case poll()
was interrupted by some other event (e.g. EINTR).
Closes #1855