From: Harald Hoyer Date: Tue, 20 May 2014 10:25:16 +0000 (+0200) Subject: udevadm-settle: fixed return code for empty queue X-Git-Tag: v213~74 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=83be2c398589a3d64db5999cfd5527c5219bff46;hp=8477107dec4c89e2b85dfbf92051d96dd4f51480;p=elogind.git udevadm-settle: fixed return code for empty queue If the udev queue is empty and "/run/udev/queue" does not exist, "udevadm settle" would return with EXIT_FAILURE, because the inotify on "/run/udev/queue" would fail with ENOENT. This patch lets "udevadm settle" exit with EXIT_SUCCESS in this case. --- diff --git a/src/udev/udevadm-settle.c b/src/udev/udevadm-settle.c index 65fc35f9a..66fd84301 100644 --- a/src/udev/udevadm-settle.c +++ b/src/udev/udevadm-settle.c @@ -116,7 +116,11 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) } if (inotify_add_watch(pfd[0].fd, "/run/udev/queue" , IN_DELETE) < 0) { - log_debug("watching /run/udev failed"); + /* If it does not exist, we don't have to wait */ + if (errno == ENOENT) + rc = EXIT_SUCCESS; + else + log_debug("watching /run/udev/queue failed"); goto out; }