Loading arch/parisc/include/asm/cmpxchg.h +7 −7 Original line number Diff line number Diff line Loading @@ -14,22 +14,22 @@ extern void __xchg_called_with_bad_pointer(void); /* __xchg32/64 defined in arch/parisc/lib/bitops.c */ extern unsigned long __xchg8(char, char *); extern unsigned long __xchg32(int, int *); extern unsigned long __xchg8(char, volatile char *); extern unsigned long __xchg32(int, volatile int *); #ifdef CONFIG_64BIT extern unsigned long __xchg64(unsigned long, unsigned long *); extern unsigned long __xchg64(unsigned long, volatile unsigned long *); #endif /* optimizer better get rid of switch since size is a constant */ static inline unsigned long __xchg(unsigned long x, __volatile__ void *ptr, int size) __xchg(unsigned long x, volatile void *ptr, int size) { switch (size) { #ifdef CONFIG_64BIT case 8: return __xchg64(x, (unsigned long *) ptr); case 8: return __xchg64(x, (volatile unsigned long *) ptr); #endif case 4: return __xchg32((int) x, (int *) ptr); case 1: return __xchg8((char) x, (char *) ptr); case 4: return __xchg32((int) x, (volatile int *) ptr); case 1: return __xchg8((char) x, (volatile char *) ptr); } __xchg_called_with_bad_pointer(); return x; Loading arch/parisc/lib/bitops.c +3 −3 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ arch_spinlock_t __atomic_hash[ATOMIC_HASH_SIZE] __lock_aligned = { #endif #ifdef CONFIG_64BIT unsigned long __xchg64(unsigned long x, unsigned long *ptr) unsigned long __xchg64(unsigned long x, volatile unsigned long *ptr) { unsigned long temp, flags; Loading @@ -30,7 +30,7 @@ unsigned long __xchg64(unsigned long x, unsigned long *ptr) } #endif unsigned long __xchg32(int x, int *ptr) unsigned long __xchg32(int x, volatile int *ptr) { unsigned long flags; long temp; Loading @@ -43,7 +43,7 @@ unsigned long __xchg32(int x, int *ptr) } unsigned long __xchg8(char x, char *ptr) unsigned long __xchg8(char x, volatile char *ptr) { unsigned long flags; long temp; Loading Loading
arch/parisc/include/asm/cmpxchg.h +7 −7 Original line number Diff line number Diff line Loading @@ -14,22 +14,22 @@ extern void __xchg_called_with_bad_pointer(void); /* __xchg32/64 defined in arch/parisc/lib/bitops.c */ extern unsigned long __xchg8(char, char *); extern unsigned long __xchg32(int, int *); extern unsigned long __xchg8(char, volatile char *); extern unsigned long __xchg32(int, volatile int *); #ifdef CONFIG_64BIT extern unsigned long __xchg64(unsigned long, unsigned long *); extern unsigned long __xchg64(unsigned long, volatile unsigned long *); #endif /* optimizer better get rid of switch since size is a constant */ static inline unsigned long __xchg(unsigned long x, __volatile__ void *ptr, int size) __xchg(unsigned long x, volatile void *ptr, int size) { switch (size) { #ifdef CONFIG_64BIT case 8: return __xchg64(x, (unsigned long *) ptr); case 8: return __xchg64(x, (volatile unsigned long *) ptr); #endif case 4: return __xchg32((int) x, (int *) ptr); case 1: return __xchg8((char) x, (char *) ptr); case 4: return __xchg32((int) x, (volatile int *) ptr); case 1: return __xchg8((char) x, (volatile char *) ptr); } __xchg_called_with_bad_pointer(); return x; Loading
arch/parisc/lib/bitops.c +3 −3 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ arch_spinlock_t __atomic_hash[ATOMIC_HASH_SIZE] __lock_aligned = { #endif #ifdef CONFIG_64BIT unsigned long __xchg64(unsigned long x, unsigned long *ptr) unsigned long __xchg64(unsigned long x, volatile unsigned long *ptr) { unsigned long temp, flags; Loading @@ -30,7 +30,7 @@ unsigned long __xchg64(unsigned long x, unsigned long *ptr) } #endif unsigned long __xchg32(int x, int *ptr) unsigned long __xchg32(int x, volatile int *ptr) { unsigned long flags; long temp; Loading @@ -43,7 +43,7 @@ unsigned long __xchg32(int x, int *ptr) } unsigned long __xchg8(char x, char *ptr) unsigned long __xchg8(char x, volatile char *ptr) { unsigned long flags; long temp; Loading