aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/log2.h
diff options
context:
space:
mode:
authorRobert P. J. Day <rpjday@mindspring.com>2007-01-30 06:06:00 -0500
committerPaul Mackerras <paulus@samba.org>2007-02-07 14:03:19 +1100
commit63c2f782e8f6aafbc11b14b2cb291b3dc9fc217d (patch)
treecbcd1f138a886529ec62a21c5dd4b2c87581058d /include/linux/log2.h
parent[POWERPC] MPIC: support more than 256 sources (diff)
downloadlinux-dev-63c2f782e8f6aafbc11b14b2cb291b3dc9fc217d.tar.xz
linux-dev-63c2f782e8f6aafbc11b14b2cb291b3dc9fc217d.zip
[POWERPC] Add "is_power_of_2" checking to log2.h.
Add the inline function "is_power_of_2()" to log2.h, where the value zero is *not* considered to be a power of two. Signed-off-by: Robert P. J. Day <rpjday@mindspring.com> Acked-by: Kumar Gala <galak@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'include/linux/log2.h')
-rw-r--r--include/linux/log2.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/log2.h b/include/linux/log2.h
index d02e1a547a7e..99922bedfcc9 100644
--- a/include/linux/log2.h
+++ b/include/linux/log2.h
@@ -44,6 +44,17 @@ int __ilog2_u64(u64 n)
#endif
/*
+ * Determine whether some value is a power of two, where zero is
+ * *not* considered a power of two.
+ */
+
+static inline __attribute__((const))
+bool is_power_of_2(unsigned long n)
+{
+ return (n != 0 && ((n & (n - 1)) == 0));
+}
+
+/*
* round up to nearest power of two
*/
static inline __attribute__((const))