On Tue, Mar 28, 2017 at 06:25:07PM +0200, Dmitry Vyukov wrote: > On Tue, Mar 28, 2017 at 6:15 PM, Dmitry Vyukov <dvyukov@xxxxxxxxxx> wrote: > > #define __try_cmpxchg(ptr, pold, new, size) \ > > __raw_try_cmpxchg((ptr), (pold), (new), (size), LOCK_PREFIX) > > > > -#define try_cmpxchg(ptr, pold, new) \ > > +#define arch_try_cmpxchg(ptr, pold, new) \ > > __try_cmpxchg((ptr), (pold), (new), sizeof(*(ptr))) > > Is try_cmpxchg() a part of public interface like cmpxchg, or only a > helper to implement atomic_try_cmpxchg()? > If it's the latter than we don't need to wrap them. De-facto, it's an x86-specific helper. It was added in commit: a9ebf306f52c756c ("locking/atomic: Introduce atomic_try_cmpxchg()") ... which did not add try_cmpxchg to any generic header. If it was meant to be part of the public interface, we'd need a generic definition. Thanks, Mark. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>