diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-06-03 14:45:48 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-06-03 14:45:48 -0700 |
commit | 788a024921c48985939f8241c1ff862a7374d8f9 (patch) | |
tree | dafa4cb2a3d59eabe2e3c00c55da4c479ef7314b /arch/arc/include | |
parent | 66be4e66a7f422128748e3c3ef6ee72b20a6197b (diff) | |
parent | 46e04c25e72f002d0d14be072300c2dd827d99b6 (diff) | |
download | linux-788a024921c48985939f8241c1ff862a7374d8f9.tar.bz2 |
Merge tag 'arc-5.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc
Pull ARC fixes from Vineet Gupta:
- Fix for userspace trying to access kernel vaddr space
- HSDK platform DT updates
- Cleanup some build warnings
* tag 'arc-5.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
ARC: [plat-hsdk] Get rid of inappropriate PHY settings
ARC: [plat-hsdk]: Add support of Vivante GPU
ARC: [plat-hsdk]: enable creg-gpio controller
ARC: [plat-hsdk]: Add missing FIFO size entry in GMAC node
ARC: [plat-hsdk]: Add missing multicast filter bins number to GMAC node
ARC: mm: SIGSEGV userspace trying to access kernel virtual memory
ARC: fix build warnings
Diffstat (limited to 'arch/arc/include')
-rw-r--r-- | arch/arc/include/asm/cmpxchg.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/arc/include/asm/cmpxchg.h b/arch/arc/include/asm/cmpxchg.h index d819de1c5d10..3ea4112c8302 100644 --- a/arch/arc/include/asm/cmpxchg.h +++ b/arch/arc/include/asm/cmpxchg.h @@ -92,8 +92,11 @@ __cmpxchg(volatile void *ptr, unsigned long expected, unsigned long new) #endif /* CONFIG_ARC_HAS_LLSC */ -#define cmpxchg(ptr, o, n) ((typeof(*(ptr)))__cmpxchg((ptr), \ - (unsigned long)(o), (unsigned long)(n))) +#define cmpxchg(ptr, o, n) ({ \ + (typeof(*(ptr)))__cmpxchg((ptr), \ + (unsigned long)(o), \ + (unsigned long)(n)); \ +}) /* * atomic_cmpxchg is same as cmpxchg @@ -198,8 +201,11 @@ static inline unsigned long __xchg(unsigned long val, volatile void *ptr, return __xchg_bad_pointer(); } -#define xchg(ptr, with) ((typeof(*(ptr)))__xchg((unsigned long)(with), (ptr), \ - sizeof(*(ptr)))) +#define xchg(ptr, with) ({ \ + (typeof(*(ptr)))__xchg((unsigned long)(with), \ + (ptr), \ + sizeof(*(ptr))); \ +}) #endif /* CONFIG_ARC_PLAT_EZNPS */ |