aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_bit.h
diff options
context:
space:
mode:
authorDavid Chinner <dgc@sgi.com>2007-12-06 22:08:48 -0500
committerLachlan McIlroy <lachlan@redback.melbourne.sgi.com>2008-02-07 02:19:41 -0500
commitedd319dc527733e61eec5bdc9ce20c94634b6482 (patch)
treeb2fdf06a9bfec6e905dfab9c8a23faaebf27c54d /fs/xfs/xfs_bit.h
parent45ba598e56fa9f77801e06432b50580d97994fa4 (diff)
[XFS] Fix xfs_lowbit64
xfs_lowbit64 was broken on 32 bit platforms in a recent cleanup of the xfs bitops. Fix it back up again. SGI-PV: 974005 SGI-Modid: xfs-linux-melb:xfs-kern:30202a Signed-off-by: David Chinner <dgc@sgi.com> Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_bit.h')
-rw-r--r--fs/xfs/xfs_bit.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/xfs/xfs_bit.h b/fs/xfs/xfs_bit.h
index 0f9fc9a3c415..325a007dec91 100644
--- a/fs/xfs/xfs_bit.h
+++ b/fs/xfs/xfs_bit.h
@@ -61,15 +61,15 @@ static inline int xfs_highbit64(__uint64_t v)
61/* Get low bit set out of 32-bit argument, -1 if none set */ 61/* Get low bit set out of 32-bit argument, -1 if none set */
62static inline int xfs_lowbit32(__uint32_t v) 62static inline int xfs_lowbit32(__uint32_t v)
63{ 63{
64 unsigned long t = v; 64 __uint32_t t = v;
65 return (v) ? find_first_bit(&t, 32) : -1; 65 return (t) ? find_first_bit((unsigned long *)&t, 32) : -1;
66} 66}
67 67
68/* Get low bit set out of 64-bit argument, -1 if none set */ 68/* Get low bit set out of 64-bit argument, -1 if none set */
69static inline int xfs_lowbit64(__uint64_t v) 69static inline int xfs_lowbit64(__uint64_t v)
70{ 70{
71 unsigned long t = v; 71 __uint64_t t = v;
72 return (v) ? find_first_bit(&t, 64) : -1; 72 return (t) ? find_first_bit((unsigned long *)&t, 64) : -1;
73} 73}
74 74
75/* Return whether bitmap is empty (1 == empty) */ 75/* Return whether bitmap is empty (1 == empty) */