diff options
author | Tom Gundersen <teg@jklm.no> | 2015-07-20 09:52:44 -0400 |
---|---|---|
committer | Anthony G. Basile <blueness@gentoo.org> | 2015-07-20 09:52:44 -0400 |
commit | 75e930ed64b62ac7e684cbe3493963371904d55b (patch) | |
tree | 1b7de4403bf802875ec3abf40840715a029c0776 | |
parent | libudev: fix commit 3df6350 (diff) | |
download | eudev-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.c | 6 |
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 */ |