|
@@ -15,6 +15,8 @@
|
|
|
#define BITS_TO_U64(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u64))
|
|
#define BITS_TO_U64(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u64))
|
|
|
#define BITS_TO_U32(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u32))
|
|
#define BITS_TO_U32(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u32))
|
|
|
#define BITS_TO_BYTES(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE)
|
|
#define BITS_TO_BYTES(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE)
|
|
|
|
|
+#define BIT_WORD(nr) ((nr) / BITS_PER_LONG)
|
|
|
|
|
+#define BIT_MASK(nr) (1UL << ((nr) % BITS_PER_LONG))
|
|
|
|
|
|
|
|
#define for_each_set_bit(bit, addr, size) \
|
|
#define for_each_set_bit(bit, addr, size) \
|
|
|
for ((bit) = find_first_bit((addr), (size)); \
|
|
for ((bit) = find_first_bit((addr), (size)); \
|