函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\nsproxy.c Create Date:2022-07-27 10:32:04
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Create new nsproxy and all of its the associated namespaces.* Return the newly created nsproxy. Do not attach this to the task,* leave it to the caller to do proper locking and attach it to task.

函数原型:static struct nsproxy *create_new_namespaces(unsigned long flags, struct task_struct *tsk, struct user_namespace *user_ns, struct fs_struct *new_fs)

返回类型:struct nsproxy

参数:

类型参数名称
unsigned longflags
struct task_struct *tsk
struct user_namespace *user_ns
struct fs_struct *new_fs
67  new_nsp等于create_nsproxy()
68  如果非new_nsp则返回:错误号
71  mnt_ns等于copy_mnt_ns(flags, mnt_ns, user_ns, new_fs)
72  如果是错误
73  err等于错误
74  转到:out_ns
77  uts_ns等于copy_utsname(flags, user_ns, uts_ns)
78  如果是错误
79  err等于错误
80  转到:out_uts
83  ipc_ns等于copy_ipcs(flags, user_ns, ipc_ns)
84  如果是错误
85  err等于错误
86  转到:out_ipc
89  pid_ns_for_children等于copy_pid_ns(flags, user_ns, pid_ns_for_children)
91  如果是错误
92  err等于错误
93  转到:out_pid
96  cgroup_ns等于copy_cgroup_ns(flags, user_ns, cgroup_ns)
98  如果是错误
99  err等于错误
100  转到:out_cgroup
103  net_ns等于copy_net_ns(flags, user_ns, net_ns)
104  如果是错误
105  err等于错误
106  转到:out_net
109  返回:new_nsp
111  out_net :
112  put_cgroup_ns(cgroup_ns)
113  out_cgroup :
114  如果pid_ns_for_childrenput_pid_ns(pid_ns_for_children)
116  out_pid :
117  如果ipc_nsput_ipc_ns(ipc_ns)
119  out_ipc :
120  如果uts_nsput_uts_ns(uts_ns)
122  out_uts :
123  如果mnt_nsput_mnt_ns(mnt_ns)
125  out_ns :
126  释放一个对象
127  返回:错误号
调用者
名称描述
copy_namespaces复制名称空间
unshare_nsproxy_namespacesCalled from unshare. Unshare all the namespaces part of nsproxy.* On success, returns the new nsproxy.
SYSCALL_DEFINE2