| Start/ | End/ | |||
| True | False | - | Line | Source |
| 1 | #include <linux/module.h> | |||
| 2 | #include <linux/bitops.h> | |||
| 3 | ||||
| 4 | /* Find string of zero bits in a bitmap */ | |||
| 5 | unsigned long | |||
| 0 | 0 | - | 6 | find_next_zero_string(unsigned long *bitmap, long start, long nbits, int len) |
| 7 | { | |||
| 8 | unsigned long n, end, i; | |||
| 9 | ||||
| 10 | again: | |||
| 11 | n = find_next_zero_bit(bitmap, nbits, start); | |||
| 0 | 0 | - | 11 | ternary-?: __builtin_constant_p ( nbits ) && (.. |
| 0 | 0 | - | 12 | if (n == -1) |
| 0 | - | 13 | return -1; | |
| 14 | ||||
| 15 | /* could test bitsliced, but it's hardly worth it */ | |||
| 16 | end = n+len; | |||
| 0 | 0 | - | 17 | if (end >= nbits) |
| 0 | - | 18 | return -1; | |
| 0 | 0 | - | 19 | for (i = n+1; i < end; i++) { |
| 0 | 0 | - | 20 | if (test_bit(i, bitmap)) { |
| 0 | 0 | - | 20 | ternary-?: __builtin_constant_p ( i ) |
| 21 | start = i+1; | |||
| 0 | - | 22 | goto again; | |
| 23 | } | |||
| 24 | } | |||
| 0 | - | 25 | return n; | |
| 26 | } | |||
| 27 | ||||
| 28 | EXPORT_SYMBOL(find_next_zero_string); | |||
| ***TER 0% (0/17) of SOURCE FILE bitstr.c | ||||