diff options
author | Dave Airlie <airlied@redhat.com> | 2020-03-31 15:15:47 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2020-03-31 15:15:47 +1000 |
commit | 5fc0df93fccd4dc8412bfc488ba4ba8268aa12dc (patch) | |
tree | 6091ced63dbba747619762470ebba2298676ea0d /kernel/pid.c | |
parent | 700d6ab987f3b5e28b13b5993e5a9a975c5604e2 (diff) | |
parent | 7111951b8d4973bda27ff663f2cf18b663d15b48 (diff) | |
download | linux-5fc0df93fccd4dc8412bfc488ba4ba8268aa12dc.tar.bz2 |
Merge v5.6 into drm-next
msm needed rc6, so I just went and merged release
(msm has been in drm-next outside of this tree)
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'kernel/pid.c')
-rw-r--r-- | kernel/pid.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/kernel/pid.c b/kernel/pid.c index 0f4ecb57214c..647b4bb457b5 100644 --- a/kernel/pid.c +++ b/kernel/pid.c @@ -247,6 +247,16 @@ struct pid *alloc_pid(struct pid_namespace *ns, pid_t *set_tid, tmp = tmp->parent; } + /* + * ENOMEM is not the most obvious choice especially for the case + * where the child subreaper has already exited and the pid + * namespace denies the creation of any new processes. But ENOMEM + * is what we have exposed to userspace for a long time and it is + * documented behavior for pid namespaces. So we can't easily + * change it even if there were an error code better suited. + */ + retval = -ENOMEM; + if (unlikely(is_child_reaper(pid))) { if (pid_ns_prepare_proc(ns)) goto out_free; |