udevd: warn if we receive SIGCHLD from untracked worker

This commit is contained in:
Tom Gundersen
2015-04-24 19:13:48 +02:00
parent 70a93737ec
commit d1317d02e6
+6
View File
@@ -859,6 +859,7 @@ static void handle_signal(struct udev *udev, int signo) {
pid_t pid;
int status;
struct udev_list_node *loop, *tmp;
bool found = false;
pid = waitpid(-1, &status, WNOHANG);
if (pid <= 0)
@@ -869,6 +870,8 @@ static void handle_signal(struct udev *udev, int signo) {
if (worker->pid != pid)
continue;
else
found = true;
if (WIFEXITED(status)) {
if (WEXITSTATUS(status) == 0)
@@ -905,6 +908,9 @@ static void handle_signal(struct udev *udev, int signo) {
worker_unref(worker);
break;
}
if (!found)
log_warning("worker ["PID_FMT"] is unknown, ignoring", pid);
}
break;
case SIGHUP: