Basic question about namespaces

Jeff Haran Jeff.Haran at
Wed Apr 22 15:38:18 EDT 2015

From: kernelnewbies-bounces at [mailto:kernelnewbies-bounces at] On Behalf Of Bruno Ferreira
Sent: Wednesday, April 22, 2015 11:39 AM
To: kernelnewbies at
Subject: Basic question about namespaces

I'm  new in kernel programming..

I'm reading the chapter about namespaces in  the "Linux Kernel Networking" (Rami Rosen), but I could not find a way to create a network namespace. I understand that I should use methods like create_nsproxy(), copy_net_ns() and create_new_namespaces(), but I don't know how to set their parameters.
For example, the method copy_net_ns(unsigned long flags, struct user_namespace *user_ns, struct net *old_net), defined in net_namespace.h.
I know that for flags, a may use CLONE_NEWNET, but what about the other parameters, user_ns and old_net?

There is a good documentation (with examples) about this? Unfortunately the book wasn't detailed enough.

I appreciate any help.

Bruno A. C. Ferreira
If I was you I’d take a look at the code that implements the clone() system call and see what it does when the CLONE_NEWNET bit is set in the flags.
Jeff Haran

-------------- next part --------------
An HTML attachment was scrubbed...

More information about the Kernelnewbies mailing list