From: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> The bswap_*() macros return int values. Make sure we return the equivalent types in same byteorder pass-through functions to avoid problems with the original type leaking through to printf() etc. Signed-off-by: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx> --- mdadm.h | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/mdadm.h b/mdadm.h index c90fe10..cb207c9 100644 --- a/mdadm.h +++ b/mdadm.h @@ -129,12 +129,12 @@ extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence)); #if !defined(__KLIBC__) #if BYTE_ORDER == LITTLE_ENDIAN -#define __cpu_to_le16(_x) (_x) -#define __cpu_to_le32(_x) (_x) -#define __cpu_to_le64(_x) (_x) -#define __le16_to_cpu(_x) (_x) -#define __le32_to_cpu(_x) (_x) -#define __le64_to_cpu(_x) (_x) +#define __cpu_to_le16(_x) (unsigned int)(_x) +#define __cpu_to_le32(_x) (unsigned int)(_x) +#define __cpu_to_le64(_x) (unsigned long long)(_x) +#define __le16_to_cpu(_x) (unsigned int)(_x) +#define __le32_to_cpu(_x) (unsigned int)(_x) +#define __le64_to_cpu(_x) (unsigned long long)(_x) #define __cpu_to_be16(_x) bswap_16(_x) #define __cpu_to_be32(_x) bswap_32(_x) @@ -150,12 +150,12 @@ extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence)); #define __le32_to_cpu(_x) bswap_32(_x) #define __le64_to_cpu(_x) bswap_64(_x) -#define __cpu_to_be16(_x) (_x) -#define __cpu_to_be32(_x) (_x) -#define __cpu_to_be64(_x) (_x) -#define __be16_to_cpu(_x) (_x) -#define __be32_to_cpu(_x) (_x) -#define __be64_to_cpu(_x) (_x) +#define __cpu_to_be16(_x) (unsigned int)(_x) +#define __cpu_to_be32(_x) (unsigned int)(_x) +#define __cpu_to_be64(_x) (unsigned long long)(_x) +#define __be16_to_cpu(_x) (unsigned int)(_x) +#define __be32_to_cpu(_x) (unsigned int)(_x) +#define __be64_to_cpu(_x) (unsigned long long)(_x) #else # error "unknown endianness." #endif -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html