diff options
Diffstat (limited to 'kernel/nsproxy.c')
| -rw-r--r-- | kernel/nsproxy.c | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/kernel/nsproxy.c b/kernel/nsproxy.c index 364ceab15f0c..997cbb951a3b 100644 --- a/kernel/nsproxy.c +++ b/kernel/nsproxy.c | |||
| @@ -29,15 +29,15 @@ | |||
| 29 | static struct kmem_cache *nsproxy_cachep; | 29 | static struct kmem_cache *nsproxy_cachep; |
| 30 | 30 | ||
| 31 | struct nsproxy init_nsproxy = { | 31 | struct nsproxy init_nsproxy = { |
| 32 | .count = ATOMIC_INIT(1), | 32 | .count = ATOMIC_INIT(1), |
| 33 | .uts_ns = &init_uts_ns, | 33 | .uts_ns = &init_uts_ns, |
| 34 | #if defined(CONFIG_POSIX_MQUEUE) || defined(CONFIG_SYSVIPC) | 34 | #if defined(CONFIG_POSIX_MQUEUE) || defined(CONFIG_SYSVIPC) |
| 35 | .ipc_ns = &init_ipc_ns, | 35 | .ipc_ns = &init_ipc_ns, |
| 36 | #endif | 36 | #endif |
| 37 | .mnt_ns = NULL, | 37 | .mnt_ns = NULL, |
| 38 | .pid_ns = &init_pid_ns, | 38 | .pid_ns_for_children = &init_pid_ns, |
| 39 | #ifdef CONFIG_NET | 39 | #ifdef CONFIG_NET |
| 40 | .net_ns = &init_net, | 40 | .net_ns = &init_net, |
| 41 | #endif | 41 | #endif |
| 42 | }; | 42 | }; |
| 43 | 43 | ||
| @@ -85,9 +85,10 @@ static struct nsproxy *create_new_namespaces(unsigned long flags, | |||
| 85 | goto out_ipc; | 85 | goto out_ipc; |
| 86 | } | 86 | } |
| 87 | 87 | ||
| 88 | new_nsp->pid_ns = copy_pid_ns(flags, user_ns, tsk->nsproxy->pid_ns); | 88 | new_nsp->pid_ns_for_children = |
| 89 | if (IS_ERR(new_nsp->pid_ns)) { | 89 | copy_pid_ns(flags, user_ns, tsk->nsproxy->pid_ns_for_children); |
| 90 | err = PTR_ERR(new_nsp->pid_ns); | 90 | if (IS_ERR(new_nsp->pid_ns_for_children)) { |
| 91 | err = PTR_ERR(new_nsp->pid_ns_for_children); | ||
| 91 | goto out_pid; | 92 | goto out_pid; |
| 92 | } | 93 | } |
| 93 | 94 | ||
| @@ -100,8 +101,8 @@ static struct nsproxy *create_new_namespaces(unsigned long flags, | |||
| 100 | return new_nsp; | 101 | return new_nsp; |
| 101 | 102 | ||
| 102 | out_net: | 103 | out_net: |
| 103 | if (new_nsp->pid_ns) | 104 | if (new_nsp->pid_ns_for_children) |
| 104 | put_pid_ns(new_nsp->pid_ns); | 105 | put_pid_ns(new_nsp->pid_ns_for_children); |
| 105 | out_pid: | 106 | out_pid: |
| 106 | if (new_nsp->ipc_ns) | 107 | if (new_nsp->ipc_ns) |
| 107 | put_ipc_ns(new_nsp->ipc_ns); | 108 | put_ipc_ns(new_nsp->ipc_ns); |
| @@ -174,8 +175,8 @@ void free_nsproxy(struct nsproxy *ns) | |||
| 174 | put_uts_ns(ns->uts_ns); | 175 | put_uts_ns(ns->uts_ns); |
| 175 | if (ns->ipc_ns) | 176 | if (ns->ipc_ns) |
| 176 | put_ipc_ns(ns->ipc_ns); | 177 | put_ipc_ns(ns->ipc_ns); |
| 177 | if (ns->pid_ns) | 178 | if (ns->pid_ns_for_children) |
| 178 | put_pid_ns(ns->pid_ns); | 179 | put_pid_ns(ns->pid_ns_for_children); |
| 179 | put_net(ns->net_ns); | 180 | put_net(ns->net_ns); |
| 180 | kmem_cache_free(nsproxy_cachep, ns); | 181 | kmem_cache_free(nsproxy_cachep, ns); |
| 181 | } | 182 | } |
