is_power_of_2: kernel/kfifo.c
vignesh babu [Mon, 16 Jul 2007 06:41:34 +0000 (23:41 -0700)]
Replace (n & (n-1)) with is_power_of_2()

Signed-off-by: vignesh babu <vignesh.babu@wipro.com>
Acked-by: Stelian Pop <stelian@popies.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

kernel/kfifo.c

index cee4191..bc41ad0 100644 (file)
@@ -24,6 +24,7 @@
 #include <linux/slab.h>
 #include <linux/err.h>
 #include <linux/kfifo.h>
+#include <linux/log2.h>
 
 /**
  * kfifo_init - allocates a new FIFO using a preallocated buffer
@@ -41,7 +42,7 @@ struct kfifo *kfifo_init(unsigned char *buffer, unsigned int size,
        struct kfifo *fifo;
 
        /* size must be a power of 2 */
-       BUG_ON(size & (size - 1));
+       BUG_ON(!is_power_of_2(size));
 
        fifo = kmalloc(sizeof(struct kfifo), gfp_mask);
        if (!fifo)