[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>

authored by

David Chinner and committed by
Lachlan McIlroy
edd319dc 45ba598e

+4 -4
+4 -4
fs/xfs/xfs_bit.h
··· 61 61 /* Get low bit set out of 32-bit argument, -1 if none set */ 62 62 static inline int xfs_lowbit32(__uint32_t v) 63 63 { 64 - unsigned long t = v; 65 - return (v) ? find_first_bit(&t, 32) : -1; 64 + __uint32_t t = v; 65 + return (t) ? find_first_bit((unsigned long *)&t, 32) : -1; 66 66 } 67 67 68 68 /* Get low bit set out of 64-bit argument, -1 if none set */ 69 69 static inline int xfs_lowbit64(__uint64_t v) 70 70 { 71 - unsigned long t = v; 72 - return (v) ? find_first_bit(&t, 64) : -1; 71 + __uint64_t t = v; 72 + return (t) ? find_first_bit((unsigned long *)&t, 64) : -1; 73 73 } 74 74 75 75 /* Return whether bitmap is empty (1 == empty) */