Lines Matching refs:start_bit
171 * start_bit. Size is the size of the bitmap in words.
179 xfs_count_bits(uint *map, uint size, uint start_bit)
188 bytep = (char*)(map + (start_bit & ~0x7));
189 byte_bit = start_bit & 0x7;
199 * If start_bit is not byte aligned, then process the
224 * start_bit. Size is the size of the bitmap in words.
227 xfs_contig_bits(uint *map, uint size, uint start_bit)
229 uint * p = ((unsigned int *) map) + (start_bit >> BIT_TO_WORD_SHIFT);
235 ASSERT(start_bit < size);
236 size -= start_bit & ~(NBWORD - 1);
237 start_bit &= (NBWORD - 1);
238 if (start_bit) {
241 tmp |= (~0U >> (NBWORD-start_bit));
253 return result - start_bit;
255 return result + ffz(tmp) - start_bit;
266 int xfs_next_bit(uint *map, uint size, uint start_bit)
268 uint * p = ((unsigned int *) map) + (start_bit >> BIT_TO_WORD_SHIFT);
269 uint result = start_bit & ~(NBWORD - 1);
274 if (start_bit >= size)
277 start_bit &= (NBWORD - 1);
278 if (start_bit) {
281 tmp &= (~0U << start_bit);