Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1627800 > unrolled thread

Re: [PATCH 00/29] IB/mlx: Fine-tuning for several function implementations

Started byDoug Ledford <dledford@redhat.com>
First post2017-04-20 22:40 +0200
Last post2017-04-21 21:00 +0200
Articles 5 on this page of 25 — 4 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH 00/29] IB/mlx: Fine-tuning for several function  implementations Doug Ledford <dledford@redhat.com> - 2017-04-20 22:40 +0200
    Re: [PATCH 00/29] IB/mlx: Fine-tuning for several function  implementations SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-20 23:10 +0200
      Re: [PATCH 00/29] IB/mlx: Fine-tuning for several function  implementations Doug Ledford <dledford@redhat.com> - 2017-04-21 04:30 +0200
    [PATCH v2 02/17] IB/mlx: Use kmalloc_array() in six functions SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:30 +0200
    [PATCH v2 00/17] IB/mlx: Fine-tuning for several function  implementations SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:30 +0200
      [PATCH v2 01/17] IB/mlx4: Use kcalloc() in mlx4_ib_alloc_pv_bufs() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:30 +0200
      [PATCH v2 07/17] IB/mlx4: Move an assignment out of a check in  forward_trap() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:40 +0200
      [PATCH v2 05/17] IB/mlx4: Delete four unnecessary return statements SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:40 +0200
      [PATCH v2 08/17] IB/mlx4: Enclose 46 expressions for sizeof by  parentheses SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:40 +0200
      [PATCH v2 04/17] IB/mlx4: Fix a typo in a comment line SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:40 +0200
      [PATCH v2 06/17] IB/mlx4: Delete an unnecessary check before kfree()  in free_pv_object() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:40 +0200
      [PATCH v2 03/17] IB/mlx4: Improve size determinations in six  functions SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:40 +0200
      Re: [PATCH v2 00/17] IB/mlx: Fine-tuning for several function  implementations Bart Van Assche <Bart.VanAssche@sandisk.com> - 2017-04-21 20:40 +0200
        Re: IB/mlx: Fine-tuning for several function implementations SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 21:30 +0200
          Re: IB/mlx: Fine-tuning for several function implementations Bart Van Assche <Bart.VanAssche@sandisk.com> - 2017-04-21 22:00 +0200
      [PATCH v2 12/17] IB/mlx4: Delete an unnecessary variable assignment  in mlx4_ib_add() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:50 +0200
      [PATCH v2 13/17] IB/mlx4: Delete an error message for a failed memory  allocation in mlx4_ib_add() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:50 +0200
      [PATCH v2 11/17] IB/mlx4: Delete an unnecessary variable  initialisation in mlx4_ib_add() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:50 +0200
      [PATCH v2 10/17] IB/mlx4: Delete an unnecessary variable in  __mlx4_ib_query_gid() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:50 +0200
      [PATCH v2 09/17] IB/mlx4: Split a condition check in six functions SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 20:50 +0200
      [PATCH v2 17/17] IB/mlx5: Less function calls in create_kernel_qp()  after error detection SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 21:00 +0200
      [PATCH v2 16/17] IB/mlx4: Add spaces for better code readability SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 21:00 +0200
        Re: [PATCH v2 16/17] IB/mlx4: Add spaces for better code readability Joe Perches <joe@perches.com> - 2017-04-21 21:30 +0200
      [PATCH v2 14/17] IB/mlx4: Delete unnecessary braces in mlx4_ib_add() SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 21:00 +0200
      [PATCH v2 15/17] IB/mlx4: Delete unwanted spaces behind usages of the  sizeof operator SF Markus Elfring <elfring@users.sourceforge.net> - 2017-04-21 21:00 +0200

Page 2 of 2 — ← Prev page 1 [2]


#1628496 — [PATCH v2 17/17] IB/mlx5: Less function calls in create_kernel_qp() after error detection

FromSF Markus Elfring <elfring@users.sourceforge.net>
Date2017-04-21 21:00 +0200
Subject[PATCH v2 17/17] IB/mlx5: Less function calls in create_kernel_qp() after error detection
Message-ID<tyLWF-Sq-1@gated-at.bofh.it>
In reply to#1628432
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Fri, 21 Apr 2017 19:19:20 +0200

The kfree() function was called in up to five cases
by the create_kernel_qp() function during error handling
even if the passed data structure member contained a null pointer.

* Adjust jump targets according to the Linux coding style convention.

* Split a condition check for memory allocation failures so that
  each pointer from these function calls will be checked immediately.

  See also background information:
  Topic "CWE-754: Improper check for unusual or exceptional conditions"
  Link: https://cwe.mitre.org/data/definitions/754.html

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 drivers/infiniband/hw/mlx5/qp.c | 43 ++++++++++++++++++++++++++---------------
 1 file changed, 27 insertions(+), 16 deletions(-)

diff --git a/drivers/infiniband/hw/mlx5/qp.c b/drivers/infiniband/hw/mlx5/qp.c
index 1e98a8c9fab8..c7bfa8ffaf0d 100644
--- a/drivers/infiniband/hw/mlx5/qp.c
+++ b/drivers/infiniband/hw/mlx5/qp.c
@@ -934,7 +934,7 @@ static int create_kernel_qp(struct mlx5_ib_dev *dev,
 	*in = mlx5_vzalloc(*inlen);
 	if (!*in) {
 		err = -ENOMEM;
-		goto err_buf;
+		goto free_buffer;
 	}
 
 	qpc = MLX5_ADDR_OF(create_qp_in, *in, qpc);
@@ -956,45 +956,56 @@ static int create_kernel_qp(struct mlx5_ib_dev *dev,
 	err = mlx5_db_alloc(dev->mdev, &qp->db);
 	if (err) {
 		mlx5_ib_dbg(dev, "err %d\n", err);
-		goto err_free;
+		goto vfree_in;
 	}
 
 	qp->sq.wrid = kmalloc_array(qp->sq.wqe_cnt,
 				    sizeof(*qp->sq.wrid),
 				    GFP_KERNEL);
+	if (!qp->sq.wrid)
+		goto free_db;
+
 	qp->sq.wr_data = kmalloc_array(qp->sq.wqe_cnt,
 				       sizeof(*qp->sq.wr_data),
 				       GFP_KERNEL);
+	if (!qp->sq.wr_data)
+		goto free_sq_wrid;
+
 	qp->rq.wrid = kmalloc_array(qp->rq.wqe_cnt,
 				    sizeof(*qp->rq.wrid),
 				    GFP_KERNEL);
+	if (!qp->rq.wrid)
+		goto free_sq_wr_data;
+
 	qp->sq.w_list = kmalloc_array(qp->sq.wqe_cnt,
 				      sizeof(*qp->sq.w_list),
 				      GFP_KERNEL);
+	if (!qp->sq.w_list)
+		goto free_rq_wrid;
+
 	qp->sq.wqe_head = kmalloc_array(qp->sq.wqe_cnt,
 					sizeof(*qp->sq.wqe_head),
 					GFP_KERNEL);
-	if (!qp->sq.wrid || !qp->sq.wr_data || !qp->rq.wrid ||
-	    !qp->sq.w_list || !qp->sq.wqe_head) {
-		err = -ENOMEM;
-		goto err_wrid;
-	}
+	if (!qp->sq.wqe_head)
+		goto free_sq_w_list;
+
 	qp->create_type = MLX5_QP_KERNEL;
 
 	return 0;
-
-err_wrid:
-	kfree(qp->sq.wqe_head);
+free_sq_w_list:
 	kfree(qp->sq.w_list);
-	kfree(qp->sq.wrid);
-	kfree(qp->sq.wr_data);
+free_rq_wrid:
 	kfree(qp->rq.wrid);
+free_sq_wr_data:
+	kfree(qp->sq.wr_data);
+free_sq_wrid:
+	kfree(qp->sq.wrid);
+free_db:
 	mlx5_db_free(dev->mdev, &qp->db);
-
-err_free:
+	err = -ENOMEM;
+vfree_in:
 	kvfree(*in);
-
-err_buf:
+free_buffer:
 	mlx5_buf_free(dev->mdev, &qp->buf);
 	return err;
 }
-- 
2.12.2

[toc] | [prev] | [next] | [standalone]


#1628498 — [PATCH v2 16/17] IB/mlx4: Add spaces for better code readability

FromSF Markus Elfring <elfring@users.sourceforge.net>
Date2017-04-21 21:00 +0200
Subject[PATCH v2 16/17] IB/mlx4: Add spaces for better code readability
Message-ID<tyLWF-Sq-13@gated-at.bofh.it>
In reply to#1628432
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Fri, 21 Apr 2017 19:14:11 +0200

Use space characters at some source code places according to
the Linux coding style convention.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 drivers/infiniband/hw/mlx4/qp.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/infiniband/hw/mlx4/qp.c b/drivers/infiniband/hw/mlx4/qp.c
index 068abfdc9d01..15240163c399 100644
--- a/drivers/infiniband/hw/mlx4/qp.c
+++ b/drivers/infiniband/hw/mlx4/qp.c
@@ -1065,7 +1065,7 @@ static void destroy_qp_common(struct mlx4_ib_dev *dev, struct mlx4_ib_qp *qp,
 	list_del(&qp->cq_recv_list);
 	if (!is_user) {
 		__mlx4_ib_cq_clean(recv_cq, qp->mqp.qpn,
-				 qp->ibqp.srq ? to_msrq(qp->ibqp.srq): NULL);
+				   qp->ibqp.srq ? to_msrq(qp->ibqp.srq) : NULL);
 		if (send_cq != recv_cq)
 			__mlx4_ib_cq_clean(send_cq, qp->mqp.qpn, NULL);
 	}
@@ -2599,7 +2599,7 @@ static int build_mlx_header(struct mlx4_ib_sqp *sqp, struct ib_ud_wr *wr,
 		u16 ether_type;
 		u16 pcp = (be32_to_cpu(ah->av.ib.sl_tclass_flowlabel) >> 29) << 13;
 
-		ether_type = (!is_udp) ? ETH_P_IBOE:
+		ether_type = (!is_udp) ? ETH_P_IBOE :
 			(ip_version == 4 ? ETH_P_IP : ETH_P_IPV6);
 
 		mlx->sched_prio = cpu_to_be16(pcp);
-- 
2.12.2

[toc] | [prev] | [next] | [standalone]


#1628541 — Re: [PATCH v2 16/17] IB/mlx4: Add spaces for better code readability

FromJoe Perches <joe@perches.com>
Date2017-04-21 21:30 +0200
SubjectRe: [PATCH v2 16/17] IB/mlx4: Add spaces for better code readability
Message-ID<tyMpJ-1h4-35@gated-at.bofh.it>
In reply to#1628498
On Fri, 2017-04-21 at 20:54 +0200, SF Markus Elfring wrote:

> Use space characters at some source code places according to
> the Linux coding style convention.

[]

> diff --git a/drivers/infiniband/hw/mlx4/qp.c b/drivers/infiniband/hw/mlx4/qp.c
[]
> @@ -2599,7 +2599,7 @@ static int build_mlx_header(struct mlx4_ib_sqp *sqp, struct ib_ud_wr *wr,
>  		u16 ether_type;
>  		u16 pcp = (be32_to_cpu(ah->av.ib.sl_tclass_flowlabel) >> 29) << 13;
>  
> -		ether_type = (!is_udp) ? ETH_P_IBOE:
> +		ether_type = (!is_udp) ? ETH_P_IBOE :
>  			(ip_version == 4 ? ETH_P_IP : ETH_P_IPV6);

Please refrain from tool generated mechanical changes.

Do try to make the code human readable and correct when
you are also making actual object code differences.

If this is to be modified at all then also please use
consistent ?: condition testing parentheses or perhaps
don't use parentheses at all.

Maybe even align the ETH_P_ uses like:

		ether_type = !is_udp		? ETH_P_IBOE :
			     ip_version == 4	? ETH_P_IP :
						  ETH_P_IPV6;

[toc] | [prev] | [next] | [standalone]


#1628502 — [PATCH v2 14/17] IB/mlx4: Delete unnecessary braces in mlx4_ib_add()

FromSF Markus Elfring <elfring@users.sourceforge.net>
Date2017-04-21 21:00 +0200
Subject[PATCH v2 14/17] IB/mlx4: Delete unnecessary braces in mlx4_ib_add()
Message-ID<tyLWG-Sq-23@gated-at.bofh.it>
In reply to#1628432
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Fri, 21 Apr 2017 18:58:43 +0200

Do not use curly brackets at one source code place
where a single statement should be sufficient.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Reviewed-by: Majd Dibbiny <majd@mellanox.com>
---
 drivers/infiniband/hw/mlx4/main.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/infiniband/hw/mlx4/main.c b/drivers/infiniband/hw/mlx4/main.c
index 67368dea9b6a..7dd5468cd4b8 100644
--- a/drivers/infiniband/hw/mlx4/main.c
+++ b/drivers/infiniband/hw/mlx4/main.c
@@ -2901,9 +2901,8 @@ static void *mlx4_ib_add(struct mlx4_dev *dev)
 		}
 		if (dev->caps.flags2 & MLX4_DEV_CAP_FLAG2_ROCE_V1_V2) {
 			err = mlx4_config_roce_v2_port(dev, ROCE_V2_UDP_DPORT);
-			if (err) {
+			if (err)
 				goto err_notif;
-			}
 		}
 	}
 
-- 
2.12.2

[toc] | [prev] | [next] | [standalone]


#1628503 — [PATCH v2 15/17] IB/mlx4: Delete unwanted spaces behind usages of the sizeof operator

FromSF Markus Elfring <elfring@users.sourceforge.net>
Date2017-04-21 21:00 +0200
Subject[PATCH v2 15/17] IB/mlx4: Delete unwanted spaces behind usages of the sizeof operator
Message-ID<tyLWF-Sq-11@gated-at.bofh.it>
In reply to#1628432
From: Markus Elfring <elfring@users.sourceforge.net>
Date: Fri, 21 Apr 2017 19:11:59 +0200

* Replace the source code "sizeof (" by "sizeof("
  according to the Linux coding style convention.

* Adjust indentation at a few places.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
---
 drivers/infiniband/hw/mlx4/qp.c | 128 ++++++++++++++++++++--------------------
 1 file changed, 63 insertions(+), 65 deletions(-)

diff --git a/drivers/infiniband/hw/mlx4/qp.c b/drivers/infiniband/hw/mlx4/qp.c
index c2a0f75d7d07..068abfdc9d01 100644
--- a/drivers/infiniband/hw/mlx4/qp.c
+++ b/drivers/infiniband/hw/mlx4/qp.c
@@ -342,39 +342,39 @@ static int send_wqe_overhead(enum mlx4_ib_qp_type type, u32 flags)
 	 */
 	switch (type) {
 	case MLX4_IB_QPT_UD:
-		return sizeof (struct mlx4_wqe_ctrl_seg) +
-			sizeof (struct mlx4_wqe_datagram_seg) +
+		return sizeof(struct mlx4_wqe_ctrl_seg) +
+			sizeof(struct mlx4_wqe_datagram_seg) +
 			((flags & MLX4_IB_QP_LSO) ? MLX4_IB_LSO_HEADER_SPARE : 0);
 	case MLX4_IB_QPT_PROXY_SMI_OWNER:
 	case MLX4_IB_QPT_PROXY_SMI:
 	case MLX4_IB_QPT_PROXY_GSI:
-		return sizeof (struct mlx4_wqe_ctrl_seg) +
-			sizeof (struct mlx4_wqe_datagram_seg) + 64;
+		return sizeof(struct mlx4_wqe_ctrl_seg) +
+			sizeof(struct mlx4_wqe_datagram_seg) + 64;
 	case MLX4_IB_QPT_TUN_SMI_OWNER:
 	case MLX4_IB_QPT_TUN_GSI:
-		return sizeof (struct mlx4_wqe_ctrl_seg) +
-			sizeof (struct mlx4_wqe_datagram_seg);
+		return sizeof(struct mlx4_wqe_ctrl_seg) +
+			sizeof(struct mlx4_wqe_datagram_seg);
 
 	case MLX4_IB_QPT_UC:
-		return sizeof (struct mlx4_wqe_ctrl_seg) +
-			sizeof (struct mlx4_wqe_raddr_seg);
+		return sizeof(struct mlx4_wqe_ctrl_seg) +
+			sizeof(struct mlx4_wqe_raddr_seg);
 	case MLX4_IB_QPT_RC:
-		return sizeof (struct mlx4_wqe_ctrl_seg) +
-			sizeof (struct mlx4_wqe_masked_atomic_seg) +
-			sizeof (struct mlx4_wqe_raddr_seg);
+		return sizeof(struct mlx4_wqe_ctrl_seg) +
+			sizeof(struct mlx4_wqe_masked_atomic_seg) +
+			sizeof(struct mlx4_wqe_raddr_seg);
 	case MLX4_IB_QPT_SMI:
 	case MLX4_IB_QPT_GSI:
-		return sizeof (struct mlx4_wqe_ctrl_seg) +
+		return sizeof(struct mlx4_wqe_ctrl_seg) +
 			ALIGN(MLX4_IB_UD_HEADER_SIZE +
 			      DIV_ROUND_UP(MLX4_IB_UD_HEADER_SIZE,
 					   MLX4_INLINE_ALIGN) *
-			      sizeof (struct mlx4_wqe_inline_seg),
-			      sizeof (struct mlx4_wqe_data_seg)) +
+			      sizeof(struct mlx4_wqe_inline_seg),
+			      sizeof(struct mlx4_wqe_data_seg)) +
 			ALIGN(4 +
-			      sizeof (struct mlx4_wqe_inline_seg),
-			      sizeof (struct mlx4_wqe_data_seg));
+			      sizeof(struct mlx4_wqe_inline_seg),
+			      sizeof(struct mlx4_wqe_data_seg));
 	default:
-		return sizeof (struct mlx4_wqe_ctrl_seg);
+		return sizeof(struct mlx4_wqe_ctrl_seg);
 	}
 }
 
@@ -398,7 +398,8 @@ static int set_rq_size(struct mlx4_ib_dev *dev, struct ib_qp_cap *cap,
 
 		qp->rq.wqe_cnt	 = roundup_pow_of_two(max(1U, cap->max_recv_wr));
 		qp->rq.max_gs	 = roundup_pow_of_two(max(1U, cap->max_recv_sge));
-		qp->rq.wqe_shift = ilog2(qp->rq.max_gs * sizeof (struct mlx4_wqe_data_seg));
+		qp->rq.wqe_shift = ilog2(qp->rq.max_gs
+					 * sizeof(struct mlx4_wqe_data_seg));
 	}
 
 	/* leave userspace return values as they were, so as not to break ABI */
@@ -426,7 +427,7 @@ static int set_kernel_sq_size(struct mlx4_ib_dev *dev, struct ib_qp_cap *cap,
 	if (cap->max_send_wr  > (dev->dev->caps.max_wqes - MLX4_IB_SQ_MAX_SPARE) ||
 	    cap->max_send_sge > min(dev->dev->caps.max_sq_sg, dev->dev->caps.max_rq_sg) ||
 	    cap->max_inline_data + send_wqe_overhead(type, qp->flags) +
-	    sizeof (struct mlx4_wqe_inline_seg) > dev->dev->caps.max_sq_desc_sz)
+	    sizeof(struct mlx4_wqe_inline_seg) > dev->dev->caps.max_sq_desc_sz)
 		return -EINVAL;
 
 	/*
@@ -438,8 +439,8 @@ static int set_kernel_sq_size(struct mlx4_ib_dev *dev, struct ib_qp_cap *cap,
 	    cap->max_send_sge + 2 > dev->dev->caps.max_sq_sg)
 		return -EINVAL;
 
-	s = max(cap->max_send_sge * sizeof (struct mlx4_wqe_data_seg),
-		cap->max_inline_data + sizeof (struct mlx4_wqe_inline_seg)) +
+	s = max(cap->max_send_sge * sizeof(struct mlx4_wqe_data_seg),
+		cap->max_inline_data + sizeof(struct mlx4_wqe_inline_seg)) +
 		send_wqe_overhead(type, qp->flags);
 
 	if (s > dev->dev->caps.max_sq_desc_sz)
@@ -509,7 +510,7 @@ static int set_kernel_sq_size(struct mlx4_ib_dev *dev, struct ib_qp_cap *cap,
 	qp->sq.max_gs = (min(dev->dev->caps.max_sq_desc_sz,
 			     (qp->sq_max_wqes_per_wr << qp->sq.wqe_shift)) -
 			 send_wqe_overhead(type, qp->flags)) /
-		sizeof (struct mlx4_wqe_data_seg);
+		sizeof(struct mlx4_wqe_data_seg);
 
 	qp->buf_size = (qp->rq.wqe_cnt << qp->rq.wqe_shift) +
 		(qp->sq.wqe_cnt << qp->sq.wqe_shift);
@@ -563,13 +564,13 @@ static int alloc_proxy_bufs(struct ib_device *dev, struct mlx4_ib_qp *qp)
 		return -ENOMEM;
 	for (i = 0; i < qp->rq.wqe_cnt; i++) {
 		qp->sqp_proxy_rcv[i].addr =
-			kmalloc(sizeof (struct mlx4_ib_proxy_sqp_hdr),
+			kmalloc(sizeof(struct mlx4_ib_proxy_sqp_hdr),
 				GFP_KERNEL);
 		if (!qp->sqp_proxy_rcv[i].addr)
 			goto err;
 		qp->sqp_proxy_rcv[i].map =
 			ib_dma_map_single(dev, qp->sqp_proxy_rcv[i].addr,
-					  sizeof (struct mlx4_ib_proxy_sqp_hdr),
+					  sizeof(struct mlx4_ib_proxy_sqp_hdr),
 					  DMA_FROM_DEVICE);
 		if (ib_dma_mapping_error(dev, qp->sqp_proxy_rcv[i].map)) {
 			kfree(qp->sqp_proxy_rcv[i].addr);
@@ -582,7 +583,7 @@ static int alloc_proxy_bufs(struct ib_device *dev, struct mlx4_ib_qp *qp)
 	while (i > 0) {
 		--i;
 		ib_dma_unmap_single(dev, qp->sqp_proxy_rcv[i].map,
-				    sizeof (struct mlx4_ib_proxy_sqp_hdr),
+				    sizeof(struct mlx4_ib_proxy_sqp_hdr),
 				    DMA_FROM_DEVICE);
 		kfree(qp->sqp_proxy_rcv[i].addr);
 	}
@@ -597,7 +598,7 @@ static void free_proxy_bufs(struct ib_device *dev, struct mlx4_ib_qp *qp)
 
 	for (i = 0; i < qp->rq.wqe_cnt; i++) {
 		ib_dma_unmap_single(dev, qp->sqp_proxy_rcv[i].map,
-				    sizeof (struct mlx4_ib_proxy_sqp_hdr),
+				    sizeof(struct mlx4_ib_proxy_sqp_hdr),
 				    DMA_FROM_DEVICE);
 		kfree(qp->sqp_proxy_rcv[i].addr);
 	}
@@ -2320,7 +2321,7 @@ static int build_sriov_qp0_header(struct mlx4_ib_sqp *sqp,
 	/* for proxy-qp0 sends, need to add in size of tunnel header */
 	/* for tunnel-qp0 sends, tunnel header is already in s/g list */
 	if (sqp->qp.mlx4_ib_qp_type == MLX4_IB_QPT_PROXY_SMI_OWNER)
-		send_size += sizeof (struct mlx4_ib_tunnel_header);
+		send_size += sizeof(struct mlx4_ib_tunnel_header);
 
 	ib_ud_header_init(send_size, 1, 0, 0, 0, 0, 0, 0, &sqp->ud_header);
 
@@ -2402,7 +2403,7 @@ static int build_sriov_qp0_header(struct mlx4_ib_sqp *sqp,
 	}
 
 	*mlx_seg_len =
-	ALIGN(i * sizeof (struct mlx4_wqe_inline_seg) + header_size, 16);
+	ALIGN(i * sizeof(struct mlx4_wqe_inline_seg) + header_size, 16);
 	return 0;
 }
 
@@ -2692,7 +2693,7 @@ static int build_mlx_header(struct mlx4_ib_sqp *sqp, struct ib_ud_wr *wr,
 	}
 
 	*mlx_seg_len =
-		ALIGN(i * sizeof (struct mlx4_wqe_inline_seg) + header_size, 16);
+		ALIGN(i * sizeof(struct mlx4_wqe_inline_seg) + header_size, 16);
 	return 0;
 }
 
@@ -2783,7 +2784,7 @@ static void set_masked_atomic_seg(struct mlx4_wqe_masked_atomic_seg *aseg,
 static void set_datagram_seg(struct mlx4_wqe_datagram_seg *dseg,
 			     struct ib_ud_wr *wr)
 {
-	memcpy(dseg->av, &to_mah(wr->ah)->av, sizeof (struct mlx4_av));
+	memcpy(dseg->av, &to_mah(wr->ah)->av, sizeof(struct mlx4_av));
 	dseg->dqpn = cpu_to_be32(wr->remote_qpn);
 	dseg->qkey = cpu_to_be32(wr->remote_qkey);
 	dseg->vlan = to_mah(wr->ah)->av.eth.vlan;
@@ -2805,7 +2806,7 @@ static void set_tunnel_datagram_seg(struct mlx4_ib_dev *dev,
 	sqp_av.sl_tclass_flowlabel = av->ib.sl_tclass_flowlabel &
 			cpu_to_be32(0xf0000000);
 
-	memcpy(dseg->av, &sqp_av, sizeof (struct mlx4_av));
+	memcpy(dseg->av, &sqp_av, sizeof(struct mlx4_av));
 	if (qpt == MLX4_IB_QPT_PROXY_GSI)
 		dseg->dqpn = cpu_to_be32(dev->dev->caps.qp1_tunnel[port - 1]);
 	else
@@ -2831,10 +2832,10 @@ static void build_tunnel_header(struct ib_ud_wr *wr, void *wqe, unsigned *mlx_se
 
 	spc = MLX4_INLINE_ALIGN -
 		((unsigned long) (inl + 1) & (MLX4_INLINE_ALIGN - 1));
-	if (sizeof (hdr) <= spc) {
-		memcpy(inl + 1, &hdr, sizeof (hdr));
+	if (sizeof(hdr) <= spc) {
+		memcpy(inl + 1, &hdr, sizeof(hdr));
 		wmb();
-		inl->byte_count = cpu_to_be32(1 << 31 | sizeof (hdr));
+		inl->byte_count = cpu_to_be32(1 << 31 | sizeof(hdr));
 		i = 1;
 	} else {
 		memcpy(inl + 1, &hdr, spc);
@@ -2842,14 +2843,14 @@ static void build_tunnel_header(struct ib_ud_wr *wr, void *wqe, unsigned *mlx_se
 		inl->byte_count = cpu_to_be32(1 << 31 | spc);
 
 		inl = (void *) (inl + 1) + spc;
-		memcpy(inl + 1, (void *) &hdr + spc, sizeof (hdr) - spc);
+		memcpy(inl + 1, (void *) &hdr + spc, sizeof(hdr) - spc);
 		wmb();
-		inl->byte_count = cpu_to_be32(1 << 31 | (sizeof (hdr) - spc));
+		inl->byte_count = cpu_to_be32(1 << 31 | (sizeof(hdr) - spc));
 		i = 2;
 	}
 
 	*mlx_seg_len =
-		ALIGN(i * sizeof (struct mlx4_wqe_inline_seg) + sizeof (hdr), 16);
+		ALIGN(i * sizeof(struct mlx4_wqe_inline_seg) + sizeof(hdr), 16);
 }
 
 static void set_mlx_icrc_seg(void *dseg)
@@ -3031,27 +3032,23 @@ int mlx4_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
 			case IB_WR_MASKED_ATOMIC_FETCH_AND_ADD:
 				set_raddr_seg(wqe, atomic_wr(wr)->remote_addr,
 					      atomic_wr(wr)->rkey);
-				wqe  += sizeof (struct mlx4_wqe_raddr_seg);
-
+				wqe  += sizeof(struct mlx4_wqe_raddr_seg);
 				set_atomic_seg(wqe, atomic_wr(wr));
-				wqe  += sizeof (struct mlx4_wqe_atomic_seg);
-
-				size += (sizeof (struct mlx4_wqe_raddr_seg) +
-					 sizeof (struct mlx4_wqe_atomic_seg)) / 16;
-
+				wqe  += sizeof(struct mlx4_wqe_atomic_seg);
+				size += (sizeof(struct mlx4_wqe_raddr_seg) +
+					 sizeof(struct mlx4_wqe_atomic_seg))
+					/ 16;
 				break;
 
 			case IB_WR_MASKED_ATOMIC_CMP_AND_SWP:
 				set_raddr_seg(wqe, atomic_wr(wr)->remote_addr,
 					      atomic_wr(wr)->rkey);
-				wqe  += sizeof (struct mlx4_wqe_raddr_seg);
-
+				wqe  += sizeof(struct mlx4_wqe_raddr_seg);
 				set_masked_atomic_seg(wqe, atomic_wr(wr));
-				wqe  += sizeof (struct mlx4_wqe_masked_atomic_seg);
-
-				size += (sizeof (struct mlx4_wqe_raddr_seg) +
-					 sizeof (struct mlx4_wqe_masked_atomic_seg)) / 16;
-
+				wqe  += sizeof(struct mlx4_wqe_masked_atomic_seg);
+				size += (sizeof(struct mlx4_wqe_raddr_seg) +
+					 sizeof(struct mlx4_wqe_masked_atomic_seg))
+					/ 16;
 				break;
 
 			case IB_WR_RDMA_READ:
@@ -3059,16 +3056,17 @@ int mlx4_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
 			case IB_WR_RDMA_WRITE_WITH_IMM:
 				set_raddr_seg(wqe, rdma_wr(wr)->remote_addr,
 					      rdma_wr(wr)->rkey);
-				wqe  += sizeof (struct mlx4_wqe_raddr_seg);
-				size += sizeof (struct mlx4_wqe_raddr_seg) / 16;
+				wqe  += sizeof(struct mlx4_wqe_raddr_seg);
+				size += sizeof(struct mlx4_wqe_raddr_seg) / 16;
 				break;
 
 			case IB_WR_LOCAL_INV:
 				ctrl->srcrb_flags |=
 					cpu_to_be32(MLX4_WQE_CTRL_STRONG_ORDER);
 				set_local_inv_seg(wqe, wr->ex.invalidate_rkey);
-				wqe  += sizeof (struct mlx4_wqe_local_inval_seg);
-				size += sizeof (struct mlx4_wqe_local_inval_seg) / 16;
+				wqe  += sizeof(struct mlx4_wqe_local_inval_seg);
+				size += sizeof(struct mlx4_wqe_local_inval_seg)
+					/ 16;
 				break;
 
 			case IB_WR_REG_MR:
@@ -3101,13 +3099,13 @@ int mlx4_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
 			set_datagram_seg(wqe, ud_wr(wr));
 			/* set the forced-loopback bit in the data seg av */
 			*(__be32 *) wqe |= cpu_to_be32(0x80000000);
-			wqe  += sizeof (struct mlx4_wqe_datagram_seg);
-			size += sizeof (struct mlx4_wqe_datagram_seg) / 16;
+			wqe  += sizeof(struct mlx4_wqe_datagram_seg);
+			size += sizeof(struct mlx4_wqe_datagram_seg) / 16;
 			break;
 		case MLX4_IB_QPT_UD:
 			set_datagram_seg(wqe, ud_wr(wr));
-			wqe  += sizeof (struct mlx4_wqe_datagram_seg);
-			size += sizeof (struct mlx4_wqe_datagram_seg) / 16;
+			wqe  += sizeof(struct mlx4_wqe_datagram_seg);
+			size += sizeof(struct mlx4_wqe_datagram_seg) / 16;
 
 			if (wr->opcode == IB_WR_LSO) {
 				err = build_lso_seg(wqe, ud_wr(wr), qp, &seglen,
@@ -3148,8 +3146,8 @@ int mlx4_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
 			set_tunnel_datagram_seg(to_mdev(ibqp->device), wqe,
 						ud_wr(wr),
 						qp->mlx4_ib_qp_type);
-			wqe  += sizeof (struct mlx4_wqe_datagram_seg);
-			size += sizeof (struct mlx4_wqe_datagram_seg) / 16;
+			wqe  += sizeof(struct mlx4_wqe_datagram_seg);
+			size += sizeof(struct mlx4_wqe_datagram_seg) / 16;
 			build_tunnel_header(ud_wr(wr), wqe, &seglen);
 			wqe  += seglen;
 			size += seglen / 16;
@@ -3180,7 +3178,7 @@ int mlx4_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
 
 		dseg = wqe;
 		dseg += wr->num_sge - 1;
-		size += wr->num_sge * (sizeof (struct mlx4_wqe_data_seg) / 16);
+		size += wr->num_sge * (sizeof(struct mlx4_wqe_data_seg) / 16);
 
 		/* Add one more inline data segment for ICRC for MLX sends */
 		if (unlikely(qp->mlx4_ib_qp_type == MLX4_IB_QPT_SMI ||
@@ -3188,7 +3186,7 @@ int mlx4_ib_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr,
 			     qp->mlx4_ib_qp_type &
 			     (MLX4_IB_QPT_PROXY_SMI_OWNER | MLX4_IB_QPT_TUN_SMI_OWNER))) {
 			set_mlx_icrc_seg(dseg + 1);
-			size += sizeof (struct mlx4_wqe_data_seg) / 16;
+			size += sizeof(struct mlx4_wqe_data_seg) / 16;
 		}
 
 		for (i = wr->num_sge - 1; i >= 0; --i, --dseg)
@@ -3313,10 +3311,10 @@ int mlx4_ib_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *wr,
 		    MLX4_IB_QPT_PROXY_SMI | MLX4_IB_QPT_PROXY_GSI)) {
 			ib_dma_sync_single_for_device(ibqp->device,
 						      qp->sqp_proxy_rcv[ind].map,
-						      sizeof (struct mlx4_ib_proxy_sqp_hdr),
+						      sizeof(struct mlx4_ib_proxy_sqp_hdr),
 						      DMA_FROM_DEVICE);
 			scat->byte_count =
-				cpu_to_be32(sizeof (struct mlx4_ib_proxy_sqp_hdr));
+				cpu_to_be32(sizeof(struct mlx4_ib_proxy_sqp_hdr));
 			/* use dma lkey from upper layer entry */
 			scat->lkey = cpu_to_be32(wr->sg_list->lkey);
 			scat->addr = cpu_to_be64(qp->sqp_proxy_rcv[ind].map);
-- 
2.12.2

[toc] | [prev] | [standalone]


Page 2 of 2 — ← Prev page 1 [2]

Back to top | Article view | linux.kernel


csiph-web