From: Tal Shnaiderman Date: Thu, 7 Jan 2021 11:45:45 +0000 (+0200) Subject: common/mlx5: fix pointer cast on Windows X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=5a90a6e40db6e712fd9dc12dedd14d8feb690ff3;p=dpdk.git common/mlx5: fix pointer cast on Windows While compiling with clang 11 the callers of the __mlx5_bit_off macro warns on the cast of pointers to unsigned long which is a smaller int type in Windows. warning: cast to smaller integer type 'unsigned long' from 'u8 (*)[16]' [-Wpointer-to-int-cast] To resolve it the type is changed to uintptr_t to be compatible for both Linux and Windows. Fixes: 865a0c15672c ("net/mlx5: add Direct Verbs prepare function") Cc: stable@dpdk.org Signed-off-by: Tal Shnaiderman Acked-by: Matan Azrad --- diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h index 7d5cf961b1..9e2d1d0c81 100644 --- a/drivers/common/mlx5/mlx5_prm.h +++ b/drivers/common/mlx5/mlx5_prm.h @@ -601,7 +601,7 @@ typedef uint8_t u8; #define __mlx5_nullp(typ) ((struct mlx5_ifc_##typ##_bits *)0) #define __mlx5_bit_sz(typ, fld) sizeof(__mlx5_nullp(typ)->fld) -#define __mlx5_bit_off(typ, fld) ((unsigned int)(unsigned long) \ +#define __mlx5_bit_off(typ, fld) ((unsigned int)(uintptr_t) \ (&(__mlx5_nullp(typ)->fld))) #define __mlx5_dw_bit_off(typ, fld) (32 - __mlx5_bit_sz(typ, fld) - \ (__mlx5_bit_off(typ, fld) & 0x1f))