summaryrefslogtreecommitdiff
path: root/arch/m32r/kernel/sys_m32r.c
diff options
context:
space:
mode:
authorSteve French <sfrench@us.ibm.com>2005-11-29 20:56:07 -0800
committerSteve French <sfrench@us.ibm.com>2005-11-29 20:56:07 -0800
commit606c0dafbe88102d64c1253caed8a2c36987070f (patch)
tree23ce7b30341e71c6da8e0183d27e29167e833e26 /arch/m32r/kernel/sys_m32r.c
parent6ab16d249513a50bef3f1b275cea6aa8d3f51832 (diff)
parentd2ef5ebb4c4fe141a82252d4db8d8521e6765c5a (diff)
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'arch/m32r/kernel/sys_m32r.c')
-rw-r--r--arch/m32r/kernel/sys_m32r.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/m32r/kernel/sys_m32r.c b/arch/m32r/kernel/sys_m32r.c
index e0500e12c5fb..fe55b28d3725 100644
--- a/arch/m32r/kernel/sys_m32r.c
+++ b/arch/m32r/kernel/sys_m32r.c
@@ -41,7 +41,8 @@ asmlinkage int sys_tas(int *addr)
return -EFAULT;
local_irq_save(flags);
oldval = *addr;
- *addr = 1;
+ if (!oldval)
+ *addr = 1;
local_irq_restore(flags);
return oldval;
}
@@ -59,7 +60,8 @@ asmlinkage int sys_tas(int *addr)
_raw_spin_lock(&tas_lock);
oldval = *addr;
- *addr = 1;
+ if (!oldval)
+ *addr = 1;
_raw_spin_unlock(&tas_lock);
return oldval;