chiark / gitweb /
udev: make sure we aleways read from netlink, if there is data
[elogind.git] / src / device.c
index b5763645e8851fedb87c6daf5bd3d93234eeba13..957bc2d6b5ee02104c740ceaa974b0422b46ecaa 100644 (file)
@@ -533,7 +533,8 @@ void device_fd_event(Manager *m, int events) {
 
                 if (!ratelimit_test(&limit))
                         log_error("Failed to get udev event: %m");
-                return;
+                if (!(events & EPOLLIN))
+                        return;
         }
 
         if (!(dev = udev_monitor_receive_device(m->udev_monitor))) {