Re: Question: copy_process() and CLONE_NEWNS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 01 Feb 2013, Kevin Wilson 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);
>  ...
> ...
> 
> 
> 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 ?

It seems so :-)

clone(2)'s manpage also says:

"It is not permitted to specify both CLONE_NEWNS and CLONE_FS in the same
clone() call."

Regards,
Tobi


_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux