anitazha / rpms / systemd

Forked from rpms/systemd 3 years ago
Clone
923a60
From 98b78068d13095fdd40883b2b6c815a9ebb59435 Mon Sep 17 00:00:00 2001
923a60
From: Nir Soffer <nirsof@gmail.com>
923a60
Date: Sun, 19 Apr 2015 03:41:26 +0300
923a60
Subject: [PATCH] udev: settle should return immediately when timeout is 0
923a60
923a60
udevadm manual says:
923a60
923a60
    A value of 0 will check if the queue is empty and always return
923a60
    immediately.
923a60
923a60
However, currently we ignore the deadline if the value is 0, and wait
923a60
without any limit.
923a60
923a60
Zero timeout behaved according to the documentation until commit
923a60
ead7c62ab7 (udevadm: settle - kill alarm()). Looking at this patch, it
923a60
seems that the behavior change was unintended.
923a60
923a60
This patch restores the documented behavior.
923a60
923a60
Cherry-picked from: bf23b9f86f6807c3029a6a46e1999ae0c87ca22a
923a60
Resolves: #1210981
923a60
---
923a60
 src/udev/udevadm-settle.c | 2 +-
923a60
 1 file changed, 1 insertion(+), 1 deletion(-)
923a60
923a60
diff --git a/src/udev/udevadm-settle.c b/src/udev/udevadm-settle.c
923a60
index e60c4623bd..40e3e28b1e 100644
923a60
--- a/src/udev/udevadm-settle.c
923a60
+++ b/src/udev/udevadm-settle.c
923a60
@@ -149,7 +149,7 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) {
923a60
                         break;
923a60
                 }
923a60
 
923a60
-                if (timeout > 0 && now(CLOCK_MONOTONIC) >= deadline)
923a60
+                if (now(CLOCK_MONOTONIC) >= deadline)
923a60
                         break;
923a60
 
923a60
                 /* wake up when queue is empty */