I'm not sure if I understand the original code. AFAICS, errno does not
have to be set at all in this callback.
ratelimit_test() returns positive if we are under limit. The code would only
log if the condition happened very often, which I assume is not inteded, and
this check was supposed to prevent too much logging.
if (revents != EPOLLIN) {
static RATELIMIT_DEFINE(limit, 10*USEC_PER_SEC, 5);
- if (!ratelimit_test(&limit))
- log_error_errno(errno, "Failed to get udev event: %m");
+ if (ratelimit_test(&limit))
+ log_warning("Failed to get udev event");
if (!(revents & EPOLLIN))
return 0;
}