From 5a90a6e40db6e712fd9dc12dedd14d8feb690ff3 Mon Sep 17 00:00:00 2001 From: Tal Shnaiderman Date: Thu, 7 Jan 2021 13:45:45 +0200 Subject: [PATCH] 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 --- drivers/common/mlx5/mlx5_prm.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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))