On Wed, Aug 18, 2021 at 02:24:22PM +0300, Mark Zhang wrote:
quoted hunk ↗ jump to hunk
+static struct rdma_op_stats *
+mlx5_ib_alloc_op_port_stats(struct ib_device *ibdev, u32 port_num)
+{
+ struct rdma_op_stats *opstats;
+ struct mlx5_ib_dev *dev = to_mdev(ibdev);
+ int num_opcounters, i, j = 0;
+
+ num_opcounters = ARRAY_SIZE(basic_op_cnts);
+
+ if (MLX5_CAP_FLOWTABLE(dev->mdev,
+ ft_field_support_2_nic_receive_rdma.bth_opcode))
+ num_opcounters += ARRAY_SIZE(rdmarx_cnp_op_cnts);
+
+ if (MLX5_CAP_FLOWTABLE(dev->mdev,
+ ft_field_support_2_nic_transmit_rdma.bth_opcode))
+ num_opcounters += ARRAY_SIZE(rdmatx_cnp_op_cnts);
+
+ opstats = kzalloc(sizeof(*opstats) +
+ num_opcounters * sizeof(struct rdma_op_counter),
+ GFP_KERNEL);
This should use struct_size
Jason