From 83be2c398589a3d64db5999cfd5527c5219bff46 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Tue, 20 May 2014 12:25:16 +0200 Subject: [PATCH 1/1] 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. --- src/udev/udevadm-settle.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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; } -- 2.30.2