diff options
author | David Chinner <dgc@sgi.com> | 2007-12-06 22:08:48 -0500 |
---|---|---|
committer | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-02-07 02:19:41 -0500 |
commit | edd319dc527733e61eec5bdc9ce20c94634b6482 (patch) | |
tree | b2fdf06a9bfec6e905dfab9c8a23faaebf27c54d | |
parent | 45ba598e56fa9f77801e06432b50580d97994fa4 (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>
-rw-r--r-- | fs/xfs/xfs_bit.h | 8 |
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 */ |
62 | static inline int xfs_lowbit32(__uint32_t v) | 62 | static 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 */ |
69 | static inline int xfs_lowbit64(__uint64_t v) | 69 | static 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) */ |