[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>
This commit is contained in:
committed by
Lachlan McIlroy
parent
45ba598e56
commit
edd319dc52
@@ -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) */
|
||||||
|
Reference in New Issue
Block a user