Messages in this thread | | | Date | Fri, 17 Jul 2015 13:17:10 -0400 | From | Waiman Long <> | Subject | Re: [PATCH v2 7/7] ARM: atomics: define our SMP atomics in terms of _relaxed operations |
| |
On 07/17/2015 05:35 AM, Will Deacon wrote: > On Fri, Jul 17, 2015 at 01:00:34AM +0100, Waiman Long wrote: >> On 07/16/2015 05:08 PM, Peter Zijlstra wrote: >>> On Thu, Jul 16, 2015 at 04:40:03PM -0400, Waiman Long wrote: >>>> On 07/16/2015 11:32 AM, Will Deacon wrote: >>>>> @@ -117,6 +115,8 @@ static inline unsigned long __xchg(unsigned long x, volatile void *ptr, int size >>>>> #error "SMP is not supported on this platform" >>> ^^^^^^^^^^^^^ >> That #error is only for ARMv5 or below. >> >>>>> #endif >>>>> >>>>> +#define xchg xchg_relaxed >>>> Is that a typo? I think xchg() needs to be a full memory barrier. >>> Pointless on UP. > I don't see the problem here. As Peter pointed out, this code only gets > looked at if !SMP and structuring it this way means I can have one > definition of xchg_relaxed, regardless of architecture version. > > Will
I am sorry that I got confused as to where it is defined. It should be OK in this case.
Cheers, Longman
| |