git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
This commit was manufactured by cvs2svn to create tag
[linux-2.6.git]
/
arch
/
parisc
/
lib
/
bitops.c
diff --git
a/arch/parisc/lib/bitops.c
b/arch/parisc/lib/bitops.c
index
b79452c
..
b7e171a
100644
(file)
--- a/
arch/parisc/lib/bitops.c
+++ b/
arch/parisc/lib/bitops.c
@@
-13,22
+13,20
@@
#include <asm/atomic.h>
#ifdef CONFIG_SMP
#include <asm/atomic.h>
#ifdef CONFIG_SMP
-
spinlock_t __atomic_hash[ATOMIC_HASH_SIZE]
= {
- [0 ... (ATOMIC_HASH_SIZE-1)] =
SPIN_LOCK_UNLOCKED
+
atomic_lock_t __atomic_hash[ATOMIC_HASH_SIZE] __lock_aligned
= {
+ [0 ... (ATOMIC_HASH_SIZE-1)] =
(atomic_lock_t) { { 1, 1, 1, 1 } }
};
#endif
};
#endif
-spinlock_t __atomic_lock = SPIN_LOCK_UNLOCKED;
-
#ifdef __LP64__
unsigned long __xchg64(unsigned long x, unsigned long *ptr)
{
unsigned long temp, flags;
#ifdef __LP64__
unsigned long __xchg64(unsigned long x, unsigned long *ptr)
{
unsigned long temp, flags;
-
SPIN_LOCK_IRQSAVE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_lock_irqsave
(ATOMIC_HASH(ptr), flags);
temp = *ptr;
*ptr = x;
temp = *ptr;
*ptr = x;
-
SPIN_UNLOCK_IRQRESTORE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_unlock_irqrestore
(ATOMIC_HASH(ptr), flags);
return temp;
}
#endif
return temp;
}
#endif
@@
-38,10
+36,10
@@
unsigned long __xchg32(int x, int *ptr)
unsigned long flags;
unsigned long temp;
unsigned long flags;
unsigned long temp;
-
SPIN_LOCK_IRQSAVE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_lock_irqsave
(ATOMIC_HASH(ptr), flags);
(long) temp = (long) *ptr; /* XXX - sign extension wanted? */
*ptr = x;
(long) temp = (long) *ptr; /* XXX - sign extension wanted? */
*ptr = x;
-
SPIN_UNLOCK_IRQRESTORE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_unlock_irqrestore
(ATOMIC_HASH(ptr), flags);
return temp;
}
return temp;
}
@@
-51,10
+49,10
@@
unsigned long __xchg8(char x, char *ptr)
unsigned long flags;
unsigned long temp;
unsigned long flags;
unsigned long temp;
-
SPIN_LOCK_IRQSAVE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_lock_irqsave
(ATOMIC_HASH(ptr), flags);
(long) temp = (long) *ptr; /* XXX - sign extension wanted? */
*ptr = x;
(long) temp = (long) *ptr; /* XXX - sign extension wanted? */
*ptr = x;
-
SPIN_UNLOCK_IRQRESTORE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_unlock_irqrestore
(ATOMIC_HASH(ptr), flags);
return temp;
}
return temp;
}
@@
-65,10
+63,10
@@
unsigned long __cmpxchg_u64(volatile unsigned long *ptr, unsigned long old, unsi
unsigned long flags;
unsigned long prev;
unsigned long flags;
unsigned long prev;
-
SPIN_LOCK_IRQSAVE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_lock_irqsave
(ATOMIC_HASH(ptr), flags);
if ((prev = *ptr) == old)
*ptr = new;
if ((prev = *ptr) == old)
*ptr = new;
-
SPIN_UNLOCK_IRQRESTORE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_unlock_irqrestore
(ATOMIC_HASH(ptr), flags);
return prev;
}
#endif
return prev;
}
#endif
@@
-78,9
+76,9
@@
unsigned long __cmpxchg_u32(volatile unsigned int *ptr, unsigned int old, unsign
unsigned long flags;
unsigned int prev;
unsigned long flags;
unsigned int prev;
-
SPIN_LOCK_IRQSAVE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_lock_irqsave
(ATOMIC_HASH(ptr), flags);
if ((prev = *ptr) == old)
*ptr = new;
if ((prev = *ptr) == old)
*ptr = new;
-
SPIN_UNLOCK_IRQRESTORE
(ATOMIC_HASH(ptr), flags);
+
atomic_spin_unlock_irqrestore
(ATOMIC_HASH(ptr), flags);
return (unsigned long)prev;
}
return (unsigned long)prev;
}