On Friday 10 July 2015 02:40 PM, Geert Uytterhoeven wrote: > Hi Peter, > > On Thu, Jul 9, 2015 at 7:29 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: >> > --- a/include/linux/atomic.h >> > +++ b/include/linux/atomic.h >> > @@ -28,6 +28,23 @@ static inline int atomic_add_unless(atom >> > #define atomic_inc_not_zero(v) atomic_add_unless((v), 1, 0) >> > #endif >> > >> > +#ifndef atomic_nand >> > +static inline void atomic_nand(int i, atomic_t *v) >> > +{ >> > + atomic_and(~i, v); > That sounds like a misnomer... > > Your NAND is "A & ~B", while my[*] NAND is "~(A & B)"? > > [*] https://en.wikipedia.org/wiki/NAND_logic > > What about atomic_clear()? (Is atomic_bic() too ARM-centric?) > ARM + ARC centric :-) We have the BIC instruction as well which does the same: A & ~B -Vineet -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html