Messages in this thread | | | Subject | Re: [v3.13][v3.14][Regression] kthread: make kthread_create()killable | From | Tetsuo Handa <> | Date | Tue, 18 Mar 2014 06:32:56 +0900 |
| |
Andrew Morton wrote: > What process is running here? Presumably modprobe.
Yes. It is a worker systemd-udevd process who is acting like modprobe .
> A possible explanation is that modprobe has genuinely received a > SIGKILL. Can you identify anything in this setup which might send a > SIGKILL to the modprobe process?
It is the systemd-udevd process who is sending SIGKILL to worker systemd-udevd processes. It uses hard coded 30 seconds timeout.
> kthread_create_on_node() thinks that SIGKILL came from the oom-killer > and it cheerfully returns -ENOMEM, which is incorrect if that signal > came from userspace. And I don't _think_ we prevent > userspace-originated signals from unblocking > wait_for_completion_killable()?
I prefer processes being killed upon SIGKILL as soon as possible. I expect any unkillable operations should be replaced with killable operations, or the OOM killer may fail to solve no memory state by choosing a process in unkillable sleep.
| |