From: Nir Soffer Date: Sat, 18 Apr 2015 23:49:47 +0000 (+0300) Subject: udev: Fix ping timeout when settle timeout is 0 X-Git-Tag: v220~341 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=7375b3c4871861f100860ea4c2848e66b60e6ca4;p=thirdparty%2Fsystemd.git udev: Fix ping timeout when settle timeout is 0 When running udevadm settle --timeout=0, the ping always times out, and udevadm will return 0 without checking the queue state. (David: Use a reasonable timeout to still get the barrier provided by ctrl-ping) --- diff --git a/src/udev/udevadm-settle.c b/src/udev/udevadm-settle.c index 437c79408a6..79f45610db0 100644 --- a/src/udev/udevadm-settle.c +++ b/src/udev/udevadm-settle.c @@ -107,7 +107,7 @@ static int adm_settle(struct udev *udev, int argc, char *argv[]) { uctrl = udev_ctrl_new(udev); if (uctrl != NULL) { - if (udev_ctrl_send_ping(uctrl, timeout) < 0) { + if (udev_ctrl_send_ping(uctrl, MAX(5U, timeout)) < 0) { log_debug("no connection to daemon"); udev_ctrl_unref(uctrl); return EXIT_SUCCESS;