All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sagi Grimberg <sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
To: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	"Nicholas A. Bellinger"
	<nab-IzHhD5pYlfBP7FQvKIMDCQ@public.gmane.org>
Subject: [PATCH v2 17/26] IB/srp: Dont allocate a page vector when using fast_reg
Date: Thu, 24 Sep 2015 20:35:09 +0300	[thread overview]
Message-ID: <1443116118-10730-18-git-send-email-sagig@mellanox.com> (raw)
In-Reply-To: <1443116118-10730-1-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>

The new fast registration API does not reuqire a page vector
so we can't avoid allocating it.

Signed-off-by: Sagi Grimberg <sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
---
 drivers/infiniband/ulp/srp/ib_srp.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c
index 8b3cbf9b6f40..f5a365395c23 100644
--- a/drivers/infiniband/ulp/srp/ib_srp.c
+++ b/drivers/infiniband/ulp/srp/ib_srp.c
@@ -840,11 +840,12 @@ static void srp_free_req_data(struct srp_target_port *target,
 
 	for (i = 0; i < target->req_ring_size; ++i) {
 		req = &ch->req_ring[i];
-		if (dev->use_fast_reg)
+		if (dev->use_fast_reg) {
 			kfree(req->fr_list);
-		else
+		} else {
 			kfree(req->fmr_list);
-		kfree(req->map_page);
+			kfree(req->map_page);
+		}
 		if (req->indirect_dma_addr) {
 			ib_dma_unmap_single(ibdev, req->indirect_dma_addr,
 					    target->indirect_size,
@@ -878,14 +879,15 @@ static int srp_alloc_req_data(struct srp_rdma_ch *ch)
 				  GFP_KERNEL);
 		if (!mr_list)
 			goto out;
-		if (srp_dev->use_fast_reg)
+		if (srp_dev->use_fast_reg) {
 			req->fr_list = mr_list;
-		else
+		} else {
 			req->fmr_list = mr_list;
-		req->map_page = kmalloc(srp_dev->max_pages_per_mr *
-					sizeof(void *), GFP_KERNEL);
-		if (!req->map_page)
-			goto out;
+			req->map_page = kmalloc(srp_dev->max_pages_per_mr *
+						sizeof(void *), GFP_KERNEL);
+			if (!req->map_page)
+				goto out;
+		}
 		req->indirect_desc = kmalloc(target->indirect_size, GFP_KERNEL);
 		if (!req->indirect_desc)
 			goto out;
-- 
1.8.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: Sagi Grimberg <sagig@mellanox.com>
To: linux-rdma@vger.kernel.org
Cc: linux-nfs@vger.kernel.org, "Nicholas A. Bellinger" <nab@linux-iscsi.org>
Subject: [PATCH v2 17/26] IB/srp: Dont allocate a page vector when using fast_reg
Date: Thu, 24 Sep 2015 20:35:09 +0300	[thread overview]
Message-ID: <1443116118-10730-18-git-send-email-sagig@mellanox.com> (raw)
In-Reply-To: <1443116118-10730-1-git-send-email-sagig@mellanox.com>

The new fast registration API does not reuqire a page vector
so we can't avoid allocating it.

Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
---
 drivers/infiniband/ulp/srp/ib_srp.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c
index 8b3cbf9b6f40..f5a365395c23 100644
--- a/drivers/infiniband/ulp/srp/ib_srp.c
+++ b/drivers/infiniband/ulp/srp/ib_srp.c
@@ -840,11 +840,12 @@ static void srp_free_req_data(struct srp_target_port *target,
 
 	for (i = 0; i < target->req_ring_size; ++i) {
 		req = &ch->req_ring[i];
-		if (dev->use_fast_reg)
+		if (dev->use_fast_reg) {
 			kfree(req->fr_list);
-		else
+		} else {
 			kfree(req->fmr_list);
-		kfree(req->map_page);
+			kfree(req->map_page);
+		}
 		if (req->indirect_dma_addr) {
 			ib_dma_unmap_single(ibdev, req->indirect_dma_addr,
 					    target->indirect_size,
@@ -878,14 +879,15 @@ static int srp_alloc_req_data(struct srp_rdma_ch *ch)
 				  GFP_KERNEL);
 		if (!mr_list)
 			goto out;
-		if (srp_dev->use_fast_reg)
+		if (srp_dev->use_fast_reg) {
 			req->fr_list = mr_list;
-		else
+		} else {
 			req->fmr_list = mr_list;
-		req->map_page = kmalloc(srp_dev->max_pages_per_mr *
-					sizeof(void *), GFP_KERNEL);
-		if (!req->map_page)
-			goto out;
+			req->map_page = kmalloc(srp_dev->max_pages_per_mr *
+						sizeof(void *), GFP_KERNEL);
+			if (!req->map_page)
+				goto out;
+		}
 		req->indirect_desc = kmalloc(target->indirect_size, GFP_KERNEL);
 		if (!req->indirect_desc)
 			goto out;
-- 
1.8.4.3


  parent reply	other threads:[~2015-09-24 17:35 UTC|newest]

Thread overview: 72+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-24 17:34 [PATCH v2 00/26] New fast registration API Sagi Grimberg
2015-09-24 17:34 ` Sagi Grimberg
     [not found] ` <1443116118-10730-1-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-09-24 17:34   ` [PATCH v2 01/26] IB/core: Introduce new " Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg
2015-09-24 17:34   ` [PATCH v2 02/26] IB/mlx5: Remove dead fmr code Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg
2015-09-24 17:34   ` [PATCH v2 03/26] IB/mlx5: Support the new memory registration API Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg
2015-09-24 17:34   ` [PATCH v2 04/26] IB/mlx4: " Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg
2015-09-24 17:34   ` [PATCH v2 05/26] RDMA/ocrdma: " Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg
2015-09-24 17:34   ` [PATCH v2 06/26] RDMA/cxgb3: " Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg
2015-09-24 17:34   ` [PATCH v2 07/26] iw_cxgb4: " Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 08/26] IB/qib: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 09/26] RDMA/nes: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 10/26] IB/iser: Port to new fast " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 11/26] iser-target: Port to new memory " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 12/26] xprtrdma: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 13/26] svcrdma: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 14/26] RDS/IW: Convert " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
     [not found]     ` <1443116118-10730-15-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-09-24 17:43       ` santosh.shilimkar-QHcLZuEGTsvQT0dZR+AlfA
2015-09-24 17:43         ` santosh.shilimkar
2015-09-24 17:35   ` [PATCH v2 15/26] IB/srp: Split srp_map_sg Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
     [not found]     ` <1443116118-10730-16-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-09-25 16:15       ` Bart Van Assche
2015-09-25 16:15         ` Bart Van Assche
     [not found]         ` <56057320.4010905-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2015-09-27  7:03           ` Sagi Grimberg
2015-09-27  7:03             ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 16/26] IB/srp: Convert to new registration API Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
     [not found]     ` <1443116118-10730-17-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-09-25 16:34       ` Bart Van Assche
2015-09-25 16:34         ` Bart Van Assche
     [not found]         ` <560577A4.4080806-XdAiOPVOjttBDgjK7y7TUQ@public.gmane.org>
2015-09-27  7:04           ` Sagi Grimberg
2015-09-27  7:04             ` Sagi Grimberg
2015-10-01 18:10       ` Bart Van Assche
2015-10-01 18:10         ` Bart Van Assche
2015-09-24 17:35   ` Sagi Grimberg [this message]
2015-09-24 17:35     ` [PATCH v2 17/26] IB/srp: Dont allocate a page vector when using fast_reg Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 18/26] IB/mlx5: Remove old FRWR API support Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 19/26] IB/mlx4: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 20/26] RDMA/ocrdma: Remove old FRWR API Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 21/26] RDMA/cxgb3: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 22/26] iw_cxgb4: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 23/26] IB/qib: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 24/26] RDMA/nes: " Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 25/26] IB/hfi1: Remove Old fast registraion API support Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-24 17:35   ` [PATCH v2 26/26] IB/core: Remove old fast registration API Sagi Grimberg
2015-09-24 17:35     ` Sagi Grimberg
2015-09-28 19:32   ` [PATCH v2 00/26] New " Steve Wise
2015-09-28 19:32     ` Steve Wise
2015-10-08  6:03   ` Selvin Xavier
2015-10-08  6:03     ` Selvin Xavier
     [not found] <1443116094-7969-1-git-send-email-sagig@mellanox.com>
     [not found] ` <1443116094-7969-1-git-send-email-sagig-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2015-09-24 17:34   ` [PATCH v2 17/26] IB/srp: Dont allocate a page vector when using fast_reg Sagi Grimberg
2015-09-24 17:34     ` Sagi Grimberg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1443116118-10730-18-git-send-email-sagig@mellanox.com \
    --to=sagig-vpraknaxozvwk0htik3j/w@public.gmane.org \
    --cc=linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=nab-IzHhD5pYlfBP7FQvKIMDCQ@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.