Messages in this thread | | | Date | Wed, 24 Oct 2012 12:46:07 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] pidns: limit the nesting depth of pid namespaces |
| |
On Wed, 24 Oct 2012 09:38:57 +0400 Andrey Wagin <avagin@gmail.com> wrote:
> > > > I think that returning -ENOMEM in response to an excessive nesting > > attempt is misleading - the system *didn't* run out of memory. EINVAL > > is better? > > I chose ENOMEM by analogy with max_pid. When a new PID can not be > allocated, ENOMEM is returned too.
I don't know what this means - please be carefully specific when identifying kernel code.
If you're referring to kernel/pid.c:alloc_pid() then -ENOMEM is appropriate there, because a failure *is* caused by memory allocation failure.
But ENOMEM isn't appropriate for nesting-depth-exceeded - we shouldn't tell the user "you ran out of memory" when he didn't! -EINVAL isn't really appropriate either ("Invalid argument") but it has become a general you-screwed-up catchall and seems to me to be the most appropriate errno we have available.
| |