summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Gundersen <teg@jklm.no>2015-07-20 09:52:44 -0400
committerAnthony G. Basile <blueness@gentoo.org>2015-07-20 09:52:44 -0400
commit75e930ed64b62ac7e684cbe3493963371904d55b (patch)
tree1b7de4403bf802875ec3abf40840715a029c0776
parentlibudev: fix commit 3df6350 (diff)
downloadeudev-75e930ed64b62ac7e684cbe3493963371904d55b.tar.gz
eudev-75e930ed64b62ac7e684cbe3493963371904d55b.tar.bz2
eudev-75e930ed64b62ac7e684cbe3493963371904d55b.zip
udevd: warn if we receive SIGCHLD from untracked worker
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
-rw-r--r--src/udev/udevd.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/udev/udevd.c b/src/udev/udevd.c
index e2cd9050e..b7a59fb43 100644
--- a/src/udev/udevd.c
+++ b/src/udev/udevd.c
@@ -1134,6 +1134,7 @@ int main(int argc, char *argv[]) {
struct epoll_event ep_netlink = { .events = EPOLLIN };
struct epoll_event ep_worker = { .events = EPOLLIN };
int r = 0, one = 1;
+ bool found = false;
udev = udev_new();
if (!udev) {
@@ -1425,6 +1426,8 @@ int main(int argc, char *argv[]) {
if (worker->state != WORKER_RUNNING)
continue;
+ else
+ found = true;
assert(event);
@@ -1491,6 +1494,9 @@ int main(int argc, char *argv[]) {
if (event_queue_insert(dev) < 0)
udev_device_unref(dev);
}
+
+ if (!found)
+ log_warning("worker ["PID_FMT"] is unknown, ignoring", getpid());
}
/* start new events */