summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Chinner <dgc@sgi.com>2007-12-07 14:08:48 +1100
committerLachlan McIlroy <lachlan@redback.melbourne.sgi.com>2008-02-07 18:19:41 +1100
commitedd319dc527733e61eec5bdc9ce20c94634b6482 (patch)
treeb2fdf06a9bfec6e905dfab9c8a23faaebf27c54d
parent45ba598e56fa9f77801e06432b50580d97994fa4 (diff)
downloadlinux-edd319dc527733e61eec5bdc9ce20c94634b6482.tar.gz
linux-edd319dc527733e61eec5bdc9ce20c94634b6482.tar.bz2
linux-edd319dc527733e61eec5bdc9ce20c94634b6482.zip
[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>
-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)
/* Get low bit set out of 32-bit argument, -1 if none set */
static inline int xfs_lowbit32(__uint32_t v)
{
- unsigned long t = v;
- return (v) ? find_first_bit(&t, 32) : -1;
+ __uint32_t t = v;
+ return (t) ? find_first_bit((unsigned long *)&t, 32) : -1;
}
/* Get low bit set out of 64-bit argument, -1 if none set */
static inline int xfs_lowbit64(__uint64_t v)
{
- unsigned long t = v;
- return (v) ? find_first_bit(&t, 64) : -1;
+ __uint64_t t = v;
+ return (t) ? find_first_bit((unsigned long *)&t, 64) : -1;
}
/* Return whether bitmap is empty (1 == empty) */