]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
s390/bitops: add for_each_set_bit_inv helper
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Sat, 25 Feb 2017 11:16:31 +0000 (12:16 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Wed, 22 Mar 2017 07:29:01 +0000 (08:29 +0100)
Same helper function like for_each_set_bit in generic code.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/include/asm/bitops.h

index d92047da5ccbaa0cfd4f967182b266791e67c3d7..e7a185407182bb43c8a9c856f98edb72da1f9468 100644 (file)
@@ -253,6 +253,11 @@ unsigned long find_first_bit_inv(const unsigned long *addr, unsigned long size);
 unsigned long find_next_bit_inv(const unsigned long *addr, unsigned long size,
                                unsigned long offset);
 
+#define for_each_set_bit_inv(bit, addr, size)                          \
+       for ((bit) = find_first_bit_inv((addr), (size));                \
+            (bit) < (size);                                            \
+            (bit) = find_next_bit_inv((addr), (size), (bit) + 1))
+
 static inline void set_bit_inv(unsigned long nr, volatile unsigned long *ptr)
 {
        return set_bit(nr ^ (BITS_PER_LONG - 1), ptr);