On 07/10/2015 12:27 PM, Peter Zijlstra wrote:
On Fri, Jul 10, 2015 at 02:42:56PM +0100, Russell King - ARM Linux wrote:
The obvious question though is whether we have an established name for this
operation elsewhere in the kernel, and whether we should have consistency.
Consistency is good.
In include/linux, we already have (grepping for 'and_*not'):
include/linux/nodemask.h:#define nodes_andnot(dst, src1, src2) \
include/linux/bitmap.h:extern int __bitmap_andnot(unsigned long *dst, const unsigned long *bitmap1,
include/linux/cpumask.h:static inline int cpumask_andnot(struct cpumask *dstp,
We also have:
include/linux/signal.h:#define _sig_andn(x,y) ((x) & ~(y))
which seems to be the only instance of "andn" in include/.
How about I rename the _sig_andn one to _sig_andnot, and go with
atomic_andnot, to match the *mask functions.
On further examination, there is also FUTEX_OP_ANDN, which is originally
what
inspired me to use the name atomic_andn(). So I think churning the
nomenclature
around for tilepro isn't really particularly helpful, and I won't bother.
In any case I think "andn" and "andnot" are both fine names for
atomic_xxx :-)
--
Chris Metcalf, EZChip Semiconductor
http://www.ezchip.com
--
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