linux/arch/x86_64/lib/bitstr.c
<<
>>
Prefs
   1#include <linux/module.h>
   2#include <linux/bitops.h>
   3
   4/* Find string of zero bits in a bitmap */ 
   5unsigned long 
   6find_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);
  12        if (n == -1) 
  13                return -1;
  14        
  15        /* could test bitsliced, but it's hardly worth it */
  16        end = n+len;
  17        if (end >= nbits) 
  18                return -1; 
  19        for (i = n+1; i < end; i++) { 
  20                if (test_bit(i, bitmap)) {  
  21                        start = i+1; 
  22                        goto again; 
  23                } 
  24        }
  25        return n;
  26}
  27
  28EXPORT_SYMBOL(find_next_zero_string);
  29
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.