aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2007-02-10 01:43:50 -0800
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-11 10:51:20 -0800
commit047c7c42327433a13ed2971de41ef7c6943b37ec (patch)
treea470d5c29edc77c7e9e510be7279973ac956f417
parent7c101b7b13707f84791441fd04f11cf710d0d2d9 (diff)
[PATCH] CRIS: turn local_save_flags() + local_irq_disable() into local_irq_save() in headers
Various headers for CRIS architecture contain local_irq_disable() after local_save_flags(). Turn it into local_irq_save(). Signed-off-by: Jiri Kosina <jkosina@suse.cz> Cc: Mikael Starvik <starvik@axis.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--include/asm-cris/semaphore-helper.h9
-rw-r--r--include/asm-cris/system.h3
2 files changed, 4 insertions, 8 deletions
diff --git a/include/asm-cris/semaphore-helper.h b/include/asm-cris/semaphore-helper.h
index a8e1e6cb7cd..27bfeca1b98 100644
--- a/include/asm-cris/semaphore-helper.h
+++ b/include/asm-cris/semaphore-helper.h
@@ -30,8 +30,7 @@ static inline int waking_non_zero(struct semaphore *sem)
unsigned long flags;
int ret = 0;
- local_save_flags(flags);
- local_irq_disable();
+ local_irq_save(flags);
if (read(&sem->waking) > 0) {
dec(&sem->waking);
ret = 1;
@@ -46,8 +45,7 @@ static inline int waking_non_zero_interruptible(struct semaphore *sem,
int ret = 0;
unsigned long flags;
- local_save_flags(flags);
- local_irq_disable();
+ local_irq_save(flags);
if (read(&sem->waking) > 0) {
dec(&sem->waking);
ret = 1;
@@ -64,8 +62,7 @@ static inline int waking_non_zero_trylock(struct semaphore *sem)
int ret = 1;
unsigned long flags;
- local_save_flags(flags);
- local_irq_disable();
+ local_irq_save(flags);
if (read(&sem->waking) <= 0)
inc(&sem->count);
else {
diff --git a/include/asm-cris/system.h b/include/asm-cris/system.h
index b869f6161aa..fea0e8d57cb 100644
--- a/include/asm-cris/system.h
+++ b/include/asm-cris/system.h
@@ -44,8 +44,7 @@ static inline unsigned long __xchg(unsigned long x, volatile void * ptr, int siz
/* since Etrax doesn't have any atomic xchg instructions, we need to disable
irq's (if enabled) and do it with move.d's */
unsigned long flags,temp;
- local_save_flags(flags); /* save flags, including irq enable bit */
- local_irq_disable(); /* shut off irq's */
+ local_irq_save(flags); /* save flags, including irq enable bit and shut off irqs */
switch (size) {
case 1:
*((unsigned char *)&temp) = x;