parisc: Fix compiler warnings in debug_core.c
Helge Deller
maintainerPATCH 1/1 parisc: Fix compiler warnings in debug_core.c
Fix this compiler warning:kernel/debug/debug_core.c: In function ‘kgdb_cpu_enter’:arch/parisc/include/asm/cmpxchg.h:48:3: warning: value computed is not used [-Wunused-value]
48 | ((__typeof__(*(ptr)))__xchg((unsigned long)(x), (ptr), sizeof(*(ptr))))arch/parisc/include/asm/atomic.h:78:30: note: in expansion of macro ‘xchg’
78 | #define atomic_xchg(v, new) (xchg(&((v)->counter), new))
| ^~~~kernel/debug/debug_core.c:596:4: note: in expansion of macro ‘atomic_xchg’
596 | atomic_xchg(&kgdb_active, cpu);
| ^~~~~~~~~~~Signed-off-by Helge Deller <[email protected]>
arch/parisc/include/asm/cmpxchg.h +8 -2
@@ -44,8 +44,14 @@ __xchg(unsigned long x, __volatile__ void *ptr, int size)** if (((unsigned long)p & 0xf) == 0) ** return __ldcw(p); */ -#define xchg (ptr, x) \ - ((__typeof__(*(ptr)))__xchg((unsigned long)(x), (ptr), sizeof(*(ptr)))) +#define xchg (ptr, x) \ +({ \ + __typeof__(*(ptr)) __ret; \ + __typeof__(*(ptr)) _x_ = (x); \ + __ret = (__typeof__(*(ptr))) \ + __xchg((unsigned long)_x_, (ptr), sizeof(*(ptr))); \ + __ret; \ +})/* bug catcher for when unsupported size is used - won't link */ extern void __cmpxchg_called_with_bad_pointer (void );