Question: copy_process() and CLONE_NEWNS

Denis Kirjanov kirjanov at gmail.com
Fri Feb 1 07:22:12 EST 2013


On 2/1/13, Kevin Wilson <wkevils at gmail.com> wrote:
> Hi all,
> question:
>
> In copy_process() we have:
>
> static struct task_struct *copy_process(unsigned long clone_flags,
>                                          unsigned long stack_start,
>                                          struct pt_regs *regs,
>                                          unsigned long stack_size,
>                                          int __user *child_tidptr,
>                                          struct pid *pid,
>                                          int trace)
>  {
>          int retval;
>          struct task_struct *p;
>          int cgroup_callbacks_done = 0;
>
>          if ((clone_flags & (CLONE_NEWNS|CLONE_FS)) ==
> (CLONE_NEWNS|CLONE_FS))
>                  return ERR_PTR(-EINVAL);
>  ...
> ...
>

man unshare



> see :http://lxr.free-electrons.com/source/kernel/fork.c#L1128
>
> Why is the CLONE_NEWNS, when set, cause an error in copy_process(), as
> shown above ?
> is it not permitted that CLONE_NEWNS will be set ?
>
> rgs,
> Kevin
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>


-- 
Regards,
Denis



More information about the Kernelnewbies mailing list