namespace.h

来自「linux得一些常用命令,以及linux环境下的c编程」· C头文件 代码 · 共 45 行

H
45
字号
#ifndef _NAMESPACE_H_#define _NAMESPACE_H_#ifdef __KERNEL__struct namespace {	atomic_t		count;	struct vfsmount *	root;	struct list_head	list;	struct rw_semaphore	sem;};extern void umount_tree(struct vfsmount *);static inline void put_namespace(struct namespace *namespace){	if (atomic_dec_and_test(&namespace->count)) {		down_write(&namespace->sem);		spin_lock(&dcache_lock);		umount_tree(namespace->root);		spin_unlock(&dcache_lock);		up_write(&namespace->sem);		kfree(namespace);	}}static inline void exit_namespace(struct task_struct *p){	struct namespace *namespace = p->namespace;	if (namespace) {		task_lock(p);		p->namespace = NULL;		task_unlock(p);		put_namespace(namespace);	}}extern int copy_namespace(int, struct task_struct *);static inline void get_namespace(struct namespace *namespace){	atomic_inc(&namespace->count);}#endif#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?