提交 edd319dc 编写于 作者: D David Chinner 提交者: Lachlan McIlroy

[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: NDavid Chinner <dgc@sgi.com>
Signed-off-by: NLachlan McIlroy <lachlan@sgi.com>
上级 45ba598e
...@@ -61,15 +61,15 @@ static inline int xfs_highbit64(__uint64_t v) ...@@ -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 */ /* Get low bit set out of 32-bit argument, -1 if none set */
static inline int xfs_lowbit32(__uint32_t v) static inline int xfs_lowbit32(__uint32_t v)
{ {
unsigned long t = v; __uint32_t t = v;
return (v) ? find_first_bit(&t, 32) : -1; return (t) ? find_first_bit((unsigned long *)&t, 32) : -1;
} }
/* Get low bit set out of 64-bit argument, -1 if none set */ /* Get low bit set out of 64-bit argument, -1 if none set */
static inline int xfs_lowbit64(__uint64_t v) static inline int xfs_lowbit64(__uint64_t v)
{ {
unsigned long t = v; __uint64_t t = v;
return (v) ? find_first_bit(&t, 64) : -1; return (t) ? find_first_bit((unsigned long *)&t, 64) : -1;
} }
/* Return whether bitmap is empty (1 == empty) */ /* Return whether bitmap is empty (1 == empty) */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册