CC: [email protected]
CC: [email protected]
TO: Luc Van Oostenryck <[email protected]>
CC: Andrew Morton <[email protected]>
CC: Linux Memory Management List <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   d665ea6ea86c785760ee4bad4543dab3267ad074
commit: d991bb1c8da842a2a0b9dc83b1005e655783f861 include/linux/compiler-gcc.h: 
sparse can do constant folding of __builtin_bswap*()
date:   5 days ago
:::::: branch date: 5 hours ago
:::::: commit date: 5 days ago
config: i386-randconfig-m031-20210505 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

New smatch warnings:
drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c:34 mlx5_dm_create() warn: 
should '(((1))) << (((__builtin_bswap32(((*((dev->caps.hca_cur[15]) + 
(($expr_0x7fc5603858b0(30)) / 32))))) >> (32 - 8 - (($expr_0x7fc560385e50(30)) 
& 31))) & (((1 << 8) - 1))) - (((__builtin_bswap32(((*((dev->caps.hca_cur[15]) 
+ (($expr_0x7fc560386c10(30)) / 32))))) >> (32 - 6 - 
(($expr_0x7fc5603871b0(30)) & 31))) & (((1 << 6) - 1)))))' be a 64 bit type?

Old smatch warnings:
drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c:46 mlx5_dm_create() warn: 
should '(((1))) << (((__builtin_bswap32(((*((dev->caps.hca_cur[15]) + 
(($expr_0x7fc560389730(30)) / 32))))) >> (32 - 8 - (($expr_0x7fc560389cd0(30)) 
& 31))) & (((1 << 8) - 1))) - (((__builtin_bswap32(((*((dev->caps.hca_cur[15]) 
+ (($expr_0x7fc56038aa90(30)) / 32))))) >> (32 - 6 - 
(($expr_0x7fc56036b060(30)) & 31))) & (((1 << 6) - 1)))))' be a 64 bit type?

vim +34 drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c

c9b9dcb430b3cd Ariel Levkovich 2019-08-29  16  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  17  struct mlx5_dm 
*mlx5_dm_create(struct mlx5_core_dev *dev)
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  18  {
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  19   u64 header_modify_icm_blocks = 
0;
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  20   u64 steering_icm_blocks = 0;
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  21   struct mlx5_dm *dm;
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  22  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  23   if (!(MLX5_CAP_GEN_64(dev, 
general_obj_types) & MLX5_GENERAL_OBJ_TYPES_CAP_SW_ICM))
586ee9e8a3b007 Saeed Mahameed  2020-01-22  24           return NULL;
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  25  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  26   dm = kzalloc(sizeof(*dm), 
GFP_KERNEL);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  27   if (!dm)
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  28           return ERR_PTR(-ENOMEM);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  29  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  30   spin_lock_init(&dm->lock);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  31  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  32   if (MLX5_CAP64_DEV_MEM(dev, 
steering_sw_icm_start_address)) {
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  33           steering_icm_blocks =
c9b9dcb430b3cd Ariel Levkovich 2019-08-29 @34                   
BIT(MLX5_CAP_DEV_MEM(dev, log_steering_sw_icm_size) -
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  35                       
MLX5_LOG_SW_ICM_BLOCK_SIZE(dev));
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  36  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  37           
dm->steering_sw_icm_alloc_blocks =
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  38                   
kcalloc(BITS_TO_LONGS(steering_icm_blocks),
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  39                           
sizeof(unsigned long), GFP_KERNEL);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  40           if 
(!dm->steering_sw_icm_alloc_blocks)
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  41                   goto 
err_steering;
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  42   }
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  43  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  44   if (MLX5_CAP64_DEV_MEM(dev, 
header_modify_sw_icm_start_address)) {
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  45           
header_modify_icm_blocks =
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  46                   
BIT(MLX5_CAP_DEV_MEM(dev, log_header_modify_sw_icm_size) -
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  47                       
MLX5_LOG_SW_ICM_BLOCK_SIZE(dev));
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  48  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  49           
dm->header_modify_sw_icm_alloc_blocks =
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  50                   
kcalloc(BITS_TO_LONGS(header_modify_icm_blocks),
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  51                           
sizeof(unsigned long), GFP_KERNEL);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  52           if 
(!dm->header_modify_sw_icm_alloc_blocks)
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  53                   goto 
err_modify_hdr;
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  54   }
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  55  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  56   return dm;
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  57  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  58  err_modify_hdr:
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  59   
kfree(dm->steering_sw_icm_alloc_blocks);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  60  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  61  err_steering:
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  62   kfree(dm);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  63  
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  64   return ERR_PTR(-ENOMEM);
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  65  }
c9b9dcb430b3cd Ariel Levkovich 2019-08-29  66  

:::::: The code at line 34 was first introduced by commit
:::::: c9b9dcb430b3cd0ad2b04c360c4e528d73430481 net/mlx5: Move device memory 
management to mlx5_core

:::::: TO: Ariel Levkovich <[email protected]>
:::::: CC: Saeed Mahameed <[email protected]>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to