On Tue, Mar 14, 2017 at 04:22:52PM +0100, Dmitry Vyukov wrote:
> Any other suggestions?

> -     return i + xadd(&v->counter, i);
> +     return i + arch_xadd(&v->counter, i);

> +#define xadd(ptr, v)                                 \
> +({                                                   \
> +     __typeof__(ptr) ____ptr = (ptr);                \
> +     kasan_check_write(____ptr, sizeof(*____ptr));   \
> +     arch_xadd(____ptr, (v));                        \
> +})

xadd() isn't a generic thing, it only exists inside x86 as a helper to
implement atomic bits.

Reply via email to