systemd/1039-udevadm-settle-fixed-return-code-for-empty-queue.patch

35 lines
1.2 KiB
Diff

From 83be2c398589a3d64db5999cfd5527c5219bff46 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Tue, 20 May 2014 12:25:16 +0200
Subject: [PATCH] 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 src/udev/udevadm-settle.c src/udev/udevadm-settle.c
index 65fc35f..66fd843 100644
--- src/udev/udevadm-settle.c
+++ 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;
}
--
1.7.9.2