diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2010-09-07 10:34:01 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2010-10-30 06:12:50 -0400 |
commit | 4882720b267b7b1d1b0ce08334b205f0329d4615 (patch) | |
tree | dd54880f84b7b7fb2bbdb529ffada434aca1e4d9 | |
parent | 45f4d0243525b6bc747c946937ced437b135a84d (diff) |
semaphore: Remove mutex emulation
Semaphores used as mutexes have been deprecated for years. Now that
all users are either converted to real semaphores or to mutexes remove
the cruft.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Christoph Hellwig <hch@infradead.org>
LKML-Reference: <20100907125057.562399240@linutronix.de>
-rw-r--r-- | include/linux/semaphore.h | 6 | ||||
-rwxr-xr-x | scripts/checkpatch.pl | 8 |
2 files changed, 2 insertions, 12 deletions
diff --git a/include/linux/semaphore.h b/include/linux/semaphore.h index 5310d27abd2a..39fa04966aa8 100644 --- a/include/linux/semaphore.h +++ b/include/linux/semaphore.h | |||
@@ -29,9 +29,6 @@ struct semaphore { | |||
29 | #define DEFINE_SEMAPHORE(name) \ | 29 | #define DEFINE_SEMAPHORE(name) \ |
30 | struct semaphore name = __SEMAPHORE_INITIALIZER(name, 1) | 30 | struct semaphore name = __SEMAPHORE_INITIALIZER(name, 1) |
31 | 31 | ||
32 | #define DECLARE_MUTEX(name) \ | ||
33 | struct semaphore name = __SEMAPHORE_INITIALIZER(name, 1) | ||
34 | |||
35 | static inline void sema_init(struct semaphore *sem, int val) | 32 | static inline void sema_init(struct semaphore *sem, int val) |
36 | { | 33 | { |
37 | static struct lock_class_key __key; | 34 | static struct lock_class_key __key; |
@@ -39,9 +36,6 @@ static inline void sema_init(struct semaphore *sem, int val) | |||
39 | lockdep_init_map(&sem->lock.dep_map, "semaphore->lock", &__key, 0); | 36 | lockdep_init_map(&sem->lock.dep_map, "semaphore->lock", &__key, 0); |
40 | } | 37 | } |
41 | 38 | ||
42 | #define init_MUTEX(sem) sema_init(sem, 1) | ||
43 | #define init_MUTEX_LOCKED(sem) sema_init(sem, 0) | ||
44 | |||
45 | extern void down(struct semaphore *sem); | 39 | extern void down(struct semaphore *sem); |
46 | extern int __must_check down_interruptible(struct semaphore *sem); | 40 | extern int __must_check down_interruptible(struct semaphore *sem); |
47 | extern int __must_check down_killable(struct semaphore *sem); | 41 | extern int __must_check down_killable(struct semaphore *sem); |
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 90b54d4697fd..e3c7fc0dca38 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl | |||
@@ -2794,12 +2794,8 @@ sub process { | |||
2794 | WARN("__func__ should be used instead of gcc specific __FUNCTION__\n" . $herecurr); | 2794 | WARN("__func__ should be used instead of gcc specific __FUNCTION__\n" . $herecurr); |
2795 | } | 2795 | } |
2796 | 2796 | ||
2797 | # check for semaphores used as mutexes | 2797 | # check for semaphores initialized locked |
2798 | if ($line =~ /^.\s*(DECLARE_MUTEX|init_MUTEX)\s*\(/) { | 2798 | if ($line =~ /^.\s*sema_init.+,\W?0\W?\)/) { |
2799 | WARN("mutexes are preferred for single holder semaphores\n" . $herecurr); | ||
2800 | } | ||
2801 | # check for semaphores used as mutexes | ||
2802 | if ($line =~ /^.\s*init_MUTEX_LOCKED\s*\(/) { | ||
2803 | WARN("consider using a completion\n" . $herecurr); | 2799 | WARN("consider using a completion\n" . $herecurr); |
2804 | 2800 | ||
2805 | } | 2801 | } |