Commit 0152fb37 authored by Martin Schwidefsky's avatar Martin Schwidefsky Committed by Linus Torvalds

[PATCH] s390: spinlock fixes

Remove useless spin_retry_counter and fix compilation for UP kernels.
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 68c11917
...@@ -4,5 +4,6 @@ ...@@ -4,5 +4,6 @@
EXTRA_AFLAGS := -traditional EXTRA_AFLAGS := -traditional
lib-y += delay.o string.o spinlock.o lib-y += delay.o string.o
lib-y += $(if $(CONFIG_64BIT),uaccess64.o,uaccess.o) lib-y += $(if $(CONFIG_64BIT),uaccess64.o,uaccess.o)
lib-$(CONFIG_SMP) += spinlock.o
\ No newline at end of file
...@@ -13,7 +13,6 @@ ...@@ -13,7 +13,6 @@
#include <linux/init.h> #include <linux/init.h>
#include <asm/io.h> #include <asm/io.h>
atomic_t spin_retry_counter;
int spin_retry = 1000; int spin_retry = 1000;
/** /**
...@@ -45,7 +44,6 @@ _raw_spin_lock_wait(raw_spinlock_t *lp, unsigned int pc) ...@@ -45,7 +44,6 @@ _raw_spin_lock_wait(raw_spinlock_t *lp, unsigned int pc)
_diag44(); _diag44();
count = spin_retry; count = spin_retry;
} }
atomic_inc(&spin_retry_counter);
if (_raw_compare_and_swap(&lp->lock, 0, pc) == 0) if (_raw_compare_and_swap(&lp->lock, 0, pc) == 0)
return; return;
} }
...@@ -58,7 +56,6 @@ _raw_spin_trylock_retry(raw_spinlock_t *lp, unsigned int pc) ...@@ -58,7 +56,6 @@ _raw_spin_trylock_retry(raw_spinlock_t *lp, unsigned int pc)
int count = spin_retry; int count = spin_retry;
while (count-- > 0) { while (count-- > 0) {
atomic_inc(&spin_retry_counter);
if (_raw_compare_and_swap(&lp->lock, 0, pc) == 0) if (_raw_compare_and_swap(&lp->lock, 0, pc) == 0)
return 1; return 1;
} }
...@@ -77,7 +74,6 @@ _raw_read_lock_wait(raw_rwlock_t *rw) ...@@ -77,7 +74,6 @@ _raw_read_lock_wait(raw_rwlock_t *rw)
_diag44(); _diag44();
count = spin_retry; count = spin_retry;
} }
atomic_inc(&spin_retry_counter);
old = rw->lock & 0x7fffffffU; old = rw->lock & 0x7fffffffU;
if (_raw_compare_and_swap(&rw->lock, old, old + 1) == old) if (_raw_compare_and_swap(&rw->lock, old, old + 1) == old)
return; return;
...@@ -92,7 +88,6 @@ _raw_read_trylock_retry(raw_rwlock_t *rw) ...@@ -92,7 +88,6 @@ _raw_read_trylock_retry(raw_rwlock_t *rw)
int count = spin_retry; int count = spin_retry;
while (count-- > 0) { while (count-- > 0) {
atomic_inc(&spin_retry_counter);
old = rw->lock & 0x7fffffffU; old = rw->lock & 0x7fffffffU;
if (_raw_compare_and_swap(&rw->lock, old, old + 1) == old) if (_raw_compare_and_swap(&rw->lock, old, old + 1) == old)
return 1; return 1;
...@@ -111,7 +106,6 @@ _raw_write_lock_wait(raw_rwlock_t *rw) ...@@ -111,7 +106,6 @@ _raw_write_lock_wait(raw_rwlock_t *rw)
_diag44(); _diag44();
count = spin_retry; count = spin_retry;
} }
atomic_inc(&spin_retry_counter);
if (_raw_compare_and_swap(&rw->lock, 0, 0x80000000) == 0) if (_raw_compare_and_swap(&rw->lock, 0, 0x80000000) == 0)
return; return;
} }
...@@ -124,7 +118,6 @@ _raw_write_trylock_retry(raw_rwlock_t *rw) ...@@ -124,7 +118,6 @@ _raw_write_trylock_retry(raw_rwlock_t *rw)
int count = spin_retry; int count = spin_retry;
while (count-- > 0) { while (count-- > 0) {
atomic_inc(&spin_retry_counter);
if (_raw_compare_and_swap(&rw->lock, 0, 0x80000000) == 0) if (_raw_compare_and_swap(&rw->lock, 0, 0x80000000) == 0)
return 1; return 1;
} }
......
...@@ -648,7 +648,7 @@ static ctl_table kern_table[] = { ...@@ -648,7 +648,7 @@ static ctl_table kern_table[] = {
.mode = 0644, .mode = 0644,
.proc_handler = &proc_dointvec, .proc_handler = &proc_dointvec,
}, },
#if defined(CONFIG_S390) #if defined(CONFIG_S390) && defined(CONFIG_SMP)
{ {
.ctl_name = KERN_SPIN_RETRY, .ctl_name = KERN_SPIN_RETRY,
.procname = "spin_retry", .procname = "spin_retry",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment