public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/1] ib_srp mr allocation failure
@ 2016-12-27 18:49 Max Gurtovoy
       [not found] ` <1482864552-27605-1-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 5+ messages in thread
From: Max Gurtovoy @ 2016-12-27 18:49 UTC (permalink / raw)
  To: maxg-VPRAkNaXOzVWk0Htik3J/w, bvanassche-HInyCGIudOg,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA
  Cc: Israel Rukshin

From: Israel Rukshin <israelr-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>

Hi,

While running traffic with multiple jobs I had those errors:
scsi host8: ib_srp: Failed to map data (-12)
scsi host8: ib_srp: Failed to map data (-12)
...

The reason for the map failurs are SG gaps.
This bug happens to me only with CX4 because it supports SG gaps registration.
I fixed this issue by allocating the mr with IB_MR_TYPE_SG_GAPS.

Should it be pushed also to stable kernel code ?

Israel Rukshin (1):
  IB/srp: fix mr allocation when the device supports sg gaps

 drivers/infiniband/ulp/srp/ib_srp.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

-- 
1.8.4.3

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

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/1] IB/srp: fix mr allocation when the device supports sg gaps
       [not found] ` <1482864552-27605-1-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
@ 2016-12-27 18:49   ` Max Gurtovoy
       [not found]     ` <1482864552-27605-2-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
  2016-12-28  5:48   ` [PATCH 0/1] ib_srp mr allocation failure Leon Romanovsky
  1 sibling, 1 reply; 5+ messages in thread
From: Max Gurtovoy @ 2016-12-27 18:49 UTC (permalink / raw)
  To: maxg-VPRAkNaXOzVWk0Htik3J/w, bvanassche-HInyCGIudOg,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA
  Cc: Israel Rukshin

From: Israel Rukshin <israelr-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>

If the device support arbitrary sg list mapping (device cap
IB_DEVICE_SG_GAPS_REG set) we allocate the memory regions with
IB_MR_TYPE_SG_GAPS.

Signed-off-by: Israel Rukshin <israelr-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
Signed-off-by: Max Gurtovoy <maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
---
 drivers/infiniband/ulp/srp/ib_srp.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c
index 8ddc071..0f67cf9 100644
--- a/drivers/infiniband/ulp/srp/ib_srp.c
+++ b/drivers/infiniband/ulp/srp/ib_srp.c
@@ -371,6 +371,7 @@ static struct srp_fr_pool *srp_create_fr_pool(struct ib_device *device,
 	struct srp_fr_desc *d;
 	struct ib_mr *mr;
 	int i, ret = -EINVAL;
+	enum ib_mr_type mr_type;
 
 	if (pool_size <= 0)
 		goto err;
@@ -384,9 +385,13 @@ static struct srp_fr_pool *srp_create_fr_pool(struct ib_device *device,
 	spin_lock_init(&pool->lock);
 	INIT_LIST_HEAD(&pool->free_list);
 
+	if (device->attrs.device_cap_flags & IB_DEVICE_SG_GAPS_REG)
+		mr_type = IB_MR_TYPE_SG_GAPS;
+	else
+		mr_type = IB_MR_TYPE_MEM_REG;
+
 	for (i = 0, d = &pool->desc[0]; i < pool->size; i++, d++) {
-		mr = ib_alloc_mr(pd, IB_MR_TYPE_MEM_REG,
-				 max_page_list_len);
+		mr = ib_alloc_mr(pd, mr_type, max_page_list_len);
 		if (IS_ERR(mr)) {
 			ret = PTR_ERR(mr);
 			if (ret == -ENOMEM)
-- 
1.8.4.3

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

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 0/1] ib_srp mr allocation failure
       [not found] ` <1482864552-27605-1-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
  2016-12-27 18:49   ` [PATCH 1/1] IB/srp: fix mr allocation when the device supports sg gaps Max Gurtovoy
@ 2016-12-28  5:48   ` Leon Romanovsky
  1 sibling, 0 replies; 5+ messages in thread
From: Leon Romanovsky @ 2016-12-28  5:48 UTC (permalink / raw)
  To: Max Gurtovoy
  Cc: bvanassche-HInyCGIudOg, linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	Israel Rukshin

[-- Attachment #1: Type: text/plain, Size: 1010 bytes --]

On Tue, Dec 27, 2016 at 08:49:11PM +0200, Max Gurtovoy wrote:
> From: Israel Rukshin <israelr-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
>
> Hi,
>
> While running traffic with multiple jobs I had those errors:
> scsi host8: ib_srp: Failed to map data (-12)
> scsi host8: ib_srp: Failed to map data (-12)
> ...
>
> The reason for the map failurs are SG gaps.
> This bug happens to me only with CX4 because it supports SG gaps registration.
> I fixed this issue by allocating the mr with IB_MR_TYPE_SG_GAPS.
>
> Should it be pushed also to stable kernel code ?

It looks so.

>
> Israel Rukshin (1):
>   IB/srp: fix mr allocation when the device supports sg gaps
>
>  drivers/infiniband/ulp/srp/ib_srp.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
>
> --
> 1.8.4.3
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] IB/srp: fix mr allocation when the device supports sg gaps
       [not found]     ` <1482864552-27605-2-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
@ 2016-12-28  5:49       ` Leon Romanovsky
  2016-12-28 10:13       ` Bart Van Assche
  1 sibling, 0 replies; 5+ messages in thread
From: Leon Romanovsky @ 2016-12-28  5:49 UTC (permalink / raw)
  To: Max Gurtovoy
  Cc: bvanassche-HInyCGIudOg, linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	Israel Rukshin

[-- Attachment #1: Type: text/plain, Size: 526 bytes --]

On Tue, Dec 27, 2016 at 08:49:12PM +0200, Max Gurtovoy wrote:
> From: Israel Rukshin <israelr-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
>
> If the device support arbitrary sg list mapping (device cap
> IB_DEVICE_SG_GAPS_REG set) we allocate the memory regions with
> IB_MR_TYPE_SG_GAPS.
>
> Signed-off-by: Israel Rukshin <israelr-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
> Signed-off-by: Max Gurtovoy <maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>

Reviewed-by: Leon Romanovsky <leonro-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/1] IB/srp: fix mr allocation when the device supports sg gaps
       [not found]     ` <1482864552-27605-2-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
  2016-12-28  5:49       ` Leon Romanovsky
@ 2016-12-28 10:13       ` Bart Van Assche
  1 sibling, 0 replies; 5+ messages in thread
From: Bart Van Assche @ 2016-12-28 10:13 UTC (permalink / raw)
  To: maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org,
	linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
  Cc: israelr-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="utf-8", Size: 466 bytes --]

On 12/27/2016 07:49 PM, Max Gurtovoy wrote:
> From: Israel Rukshin <israelr@mellanox.com>
> 
> If the device support arbitrary sg list mapping (device cap
>
IB_DEVICE_SG_GAPS_REG set) we allocate the memory regions with
> IB_MR_TYPE_SG_GAPS.

I think the "Fixes:" and "Cc: stable" tags are missing from this
patch.

Bart.N‹§²æìr¸›yúèšØb²X¬¶Ç§vØ^–)Þº{.nÇ+‰·¥Š{±­ÙšŠ{ayº\x1dʇڙë,j\a­¢f£¢·hš‹»öì\x17/oSc¾™Ú³9˜uÀ¦æå‰È&jw¨®\x03(­éšŽŠÝ¢j"ú\x1a¶^[m§ÿïêäz¹Þ–Šàþf£¢·hšˆ§~ˆmš

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-12-28 10:13 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-12-27 18:49 [PATCH 0/1] ib_srp mr allocation failure Max Gurtovoy
     [not found] ` <1482864552-27605-1-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2016-12-27 18:49   ` [PATCH 1/1] IB/srp: fix mr allocation when the device supports sg gaps Max Gurtovoy
     [not found]     ` <1482864552-27605-2-git-send-email-maxg-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2016-12-28  5:49       ` Leon Romanovsky
2016-12-28 10:13       ` Bart Van Assche
2016-12-28  5:48   ` [PATCH 0/1] ib_srp mr allocation failure Leon Romanovsky

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox