diff options
Diffstat (limited to 'security')
| -rw-r--r-- | security/selinux/hooks.c | 7 | ||||
| -rw-r--r-- | security/selinux/include/objsec.h | 2 | 
2 files changed, 4 insertions, 5 deletions
diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 63ad57ab44f..55cec4d6f11 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c @@ -51,7 +51,6 @@  #include <net/ip.h>		/* for sysctl_local_port_range[] */  #include <net/tcp.h>		/* struct or_callable used in sock_rcv_skb */  #include <asm/uaccess.h> -#include <asm/semaphore.h>  #include <asm/ioctls.h>  #include <linux/bitops.h>  #include <linux/interrupt.h> @@ -243,7 +242,7 @@ static int superblock_alloc_security(struct super_block *sb)  	if (!sbsec)  		return -ENOMEM; -	init_MUTEX(&sbsec->sem); +	mutex_init(&sbsec->lock);  	INIT_LIST_HEAD(&sbsec->list);  	INIT_LIST_HEAD(&sbsec->isec_head);  	spin_lock_init(&sbsec->isec_lock); @@ -595,7 +594,7 @@ static int superblock_doinit(struct super_block *sb, void *data)  	struct inode *inode = root->d_inode;  	int rc = 0; -	down(&sbsec->sem); +	mutex_lock(&sbsec->lock);  	if (sbsec->initialized)  		goto out; @@ -690,7 +689,7 @@ next_inode:  	}  	spin_unlock(&sbsec->isec_lock);  out: -	up(&sbsec->sem); +	mutex_unlock(&sbsec->lock);  	return rc;  } diff --git a/security/selinux/include/objsec.h b/security/selinux/include/objsec.h index 7d5a0289878..ef2267fea8b 100644 --- a/security/selinux/include/objsec.h +++ b/security/selinux/include/objsec.h @@ -63,7 +63,7 @@ struct superblock_security_struct {  	unsigned int behavior;          /* labeling behavior */  	unsigned char initialized;      /* initialization flag */  	unsigned char proc;             /* proc fs */ -	struct semaphore sem; +	struct mutex lock;  	struct list_head isec_head;  	spinlock_t isec_lock;  };  |