Lines Matching full:ns

32 	struct ns_common *ns = inode->i_private;  in ns_dname()  local
33 const struct proc_ns_operations *ns_ops = ns->ops; in ns_dname()
46 struct ns_common *ns = inode->i_private; in nsfs_evict() local
48 ns->ops->put(ns); in nsfs_evict()
54 struct ns_common *ns; in ns_get_path_cb() local
56 ns = ns_get_cb(private_data); in ns_get_path_cb()
57 if (!ns) in ns_get_path_cb()
60 return path_from_stashed(&ns->stashed, nsfs_mnt, ns, path); in ns_get_path_cb()
88 * @ns: the namespace to open
90 * This will consume a reference to @ns indendent of success or failure.
94 int open_namespace(struct ns_common *ns) in open_namespace() argument
101 err = path_from_stashed(&ns->stashed, nsfs_mnt, ns, &path); in open_namespace()
117 int open_related_ns(struct ns_common *ns, in open_related_ns() argument
118 struct ns_common *(*get_ns)(struct ns_common *ns)) in open_related_ns() argument
122 relative = get_ns(ns); in open_related_ns()
160 struct ns_common *ns = get_proc_ns(file_inode(filp)); in ns_ioctl() local
169 return open_related_ns(ns, ns_get_owner); in ns_ioctl()
171 if (!ns->ops->get_parent) in ns_ioctl()
173 return open_related_ns(ns, ns->ops->get_parent); in ns_ioctl()
175 return ns->ops->type; in ns_ioctl()
177 if (ns->ops->type != CLONE_NEWUSER) in ns_ioctl()
179 user_ns = container_of(ns, struct user_namespace, ns); in ns_ioctl()
187 if (ns->ops->type != CLONE_NEWNS) in ns_ioctl()
190 mnt_ns = container_of(ns, struct mnt_namespace, ns); in ns_ioctl()
202 if (ns->ops->type != CLONE_NEWPID) in ns_ioctl()
206 pid_ns = container_of(ns, struct pid_namespace, ns); in ns_ioctl()
249 if (ns->ops->type != CLONE_NEWNS) in ns_ioctl()
258 return copy_ns_info_to_user(to_mnt_ns(ns), uinfo, usize, &kinfo); in ns_ioctl()
270 if (ns->ops->type != CLONE_NEWNS) in ns_ioctl()
276 mnt_ns = get_sequential_mnt_ns(to_mnt_ns(ns), previous); in ns_ioctl()
280 ns = to_ns_common(mnt_ns); in ns_ioctl()
282 ret = path_from_stashed(&ns->stashed, nsfs_mnt, ns, &path); in ns_ioctl()
299 ret = copy_ns_info_to_user(to_mnt_ns(ns), uinfo, usize, &kinfo); in ns_ioctl()
319 struct ns_common *ns; in ns_get_name() local
322 ns = ns_ops->get(task); in ns_get_name()
323 if (ns) { in ns_get_name()
325 res = snprintf(buf, size, "%s:[%u]", name, ns->inum); in ns_get_name()
326 ns_ops->put(ns); in ns_get_name()
338 * @ns: current namespace
344 bool ns_match(const struct ns_common *ns, dev_t dev, ino_t ino) in ns_match() argument
346 return (ns->inum == ino) && (nsfs_mnt->mnt_sb->s_dev == dev); in ns_match()
353 const struct ns_common *ns = inode->i_private; in nsfs_show_path() local
354 const struct proc_ns_operations *ns_ops = ns->ops; in nsfs_show_path()
368 struct ns_common *ns = data; in nsfs_init_inode() local
373 inode->i_ino = ns->inum; in nsfs_init_inode()
379 struct ns_common *ns = data; in nsfs_put_data() local
380 ns->ops->put(ns); in nsfs_put_data()