Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc7e982b authored by Eric Paris's avatar Eric Paris Committed by Linus Torvalds
Browse files

[PATCH] SELinux: convert sbsec semaphore to a mutex



This patch converts the semaphore in the superblock security struct to a
mutex.  No locking changes or other code changes are done.

Signed-off-by: default avatarEric Paris <eparis@redhat.com>
Acked-by: default avatarStephen Smalley <sds@tycho.nsa.gov>
Acked-by: default avatarJames Morris <jmorris@namei.org>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 23970741
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -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 @@ static int superblock_doinit(struct super_block *sb, void *data)
	}
	spin_unlock(&sbsec->isec_lock);
out:
	up(&sbsec->sem);
	mutex_unlock(&sbsec->lock);
	return rc;
}

+1 −1
Original line number Diff line number Diff line
@@ -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;
};