linux-rdma.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] Fix modify_qp failure
@ 2017-07-13 19:37 Mustafa Ismail
  2017-07-13 19:37 ` [PATCH 1/2] RDMA/uverbs: Fix the check for port number Mustafa Ismail
  2017-07-13 19:37 ` [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr Mustafa Ismail
  0 siblings, 2 replies; 7+ messages in thread
From: Mustafa Ismail @ 2017-07-13 19:37 UTC (permalink / raw)
  To: linux-rdma-u79uwXL29TY76Z2rM5mHXA
  Cc: dledford-H+wXaHxf7aLQT0dZR+AlfA,
	swise-7bPotxP6k4+P2YhJcF5u+vpXobYPEAuW,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	stable-u79uwXL29TY76Z2rM5mHXA,
	gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r,
	shiraz.saleem-ral2JQCrhuEAvxtiuMwx3w

Commit 5ecce4c9b17b("Check port number supplied by user verbs cmds") causes
modify_qp to fail because port_num is only valid when the mask is set.

Additionally, for iWARP, the port_num is not initialized which also causes
modify_qp to fail.

This series fixes both issues.

Mustafa Ismail (2):
  RDMA/uverbs: Fix the check for port number
  RDMA/core: Initialize port_num in qp_attr

 drivers/infiniband/core/cma.c        | 2 ++
 drivers/infiniband/core/uverbs_cmd.c | 3 ++-
 2 files changed, 4 insertions(+), 1 deletion(-)

-- 
2.7.4

--
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] 7+ messages in thread

* [PATCH 1/2] RDMA/uverbs: Fix the check for port number
  2017-07-13 19:37 [PATCH 0/2] Fix modify_qp failure Mustafa Ismail
@ 2017-07-13 19:37 ` Mustafa Ismail
  2017-07-13 20:24   ` Steve Wise
  2017-07-14  6:48   ` Greg KH
  2017-07-13 19:37 ` [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr Mustafa Ismail
  1 sibling, 2 replies; 7+ messages in thread
From: Mustafa Ismail @ 2017-07-13 19:37 UTC (permalink / raw)
  To: linux-rdma; +Cc: dledford, swise, linux-kernel, stable, gregkh, shiraz.saleem

The port number is only valid if IB_QP_PORT is set in the mask.
So only check port number if it is valid to prevent modify_qp from
failing due to an invalid port number.

Fixes: 5ecce4c9b17b("Check port number supplied by user verbs cmds")
Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
---
 drivers/infiniband/core/uverbs_cmd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/infiniband/core/uverbs_cmd.c b/drivers/infiniband/core/uverbs_cmd.c
index 8ba9bfb..19de068 100644
--- a/drivers/infiniband/core/uverbs_cmd.c
+++ b/drivers/infiniband/core/uverbs_cmd.c
@@ -1935,7 +1935,8 @@ static int modify_qp(struct ib_uverbs_file *file,
 		goto out;
 	}
 
-	if (!rdma_is_port_valid(qp->device, cmd->base.port_num)) {
+	if ((cmd->base.attr_mask & IB_QP_PORT) &&
+	    !rdma_is_port_valid(qp->device, cmd->base.port_num)) {
 		ret = -EINVAL;
 		goto release_qp;
 	}
-- 
2.7.4

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

* [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr
  2017-07-13 19:37 [PATCH 0/2] Fix modify_qp failure Mustafa Ismail
  2017-07-13 19:37 ` [PATCH 1/2] RDMA/uverbs: Fix the check for port number Mustafa Ismail
@ 2017-07-13 19:37 ` Mustafa Ismail
  2017-07-13 20:25   ` Steve Wise
  2017-07-14  6:47   ` Greg KH
  1 sibling, 2 replies; 7+ messages in thread
From: Mustafa Ismail @ 2017-07-13 19:37 UTC (permalink / raw)
  To: linux-rdma; +Cc: dledford, swise, linux-kernel, stable, gregkh, shiraz.saleem

Initialize the port_num for iWARP in rdma_init_qp_attr.

Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
---
 drivers/infiniband/core/cma.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c
index 31bb82d..d65a093 100644
--- a/drivers/infiniband/core/cma.c
+++ b/drivers/infiniband/core/cma.c
@@ -1044,6 +1044,8 @@ int rdma_init_qp_attr(struct rdma_cm_id *id, struct ib_qp_attr *qp_attr,
 		} else
 			ret = iw_cm_init_qp_attr(id_priv->cm_id.iw, qp_attr,
 						 qp_attr_mask);
+		qp_attr->port_num = id_priv->id.port_num;
+		*qp_attr_mask |= IB_QP_PORT;
 	} else
 		ret = -ENOSYS;
 
-- 
2.7.4

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

* RE: [PATCH 1/2] RDMA/uverbs: Fix the check for port number
  2017-07-13 19:37 ` [PATCH 1/2] RDMA/uverbs: Fix the check for port number Mustafa Ismail
@ 2017-07-13 20:24   ` Steve Wise
  2017-07-14  6:48   ` Greg KH
  1 sibling, 0 replies; 7+ messages in thread
From: Steve Wise @ 2017-07-13 20:24 UTC (permalink / raw)
  To: 'Mustafa Ismail', linux-rdma
  Cc: dledford, linux-kernel, stable, gregkh, shiraz.saleem

> The port number is only valid if IB_QP_PORT is set in the mask.
> So only check port number if it is valid to prevent modify_qp from
> failing due to an invalid port number.
> 
> Fixes: 5ecce4c9b17b("Check port number supplied by user verbs cmds")
> Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>

Looks good.

Reviewed-by: Steve Wise <swise@opengridcomputing.com>

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

* RE: [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr
  2017-07-13 19:37 ` [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr Mustafa Ismail
@ 2017-07-13 20:25   ` Steve Wise
  2017-07-14  6:47   ` Greg KH
  1 sibling, 0 replies; 7+ messages in thread
From: Steve Wise @ 2017-07-13 20:25 UTC (permalink / raw)
  To: 'Mustafa Ismail', linux-rdma
  Cc: dledford, linux-kernel, stable, gregkh, shiraz.saleem

> Initialize the port_num for iWARP in rdma_init_qp_attr.
> 
> Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>

Looks fine.

Reviewed-by: Steve Wise <swise@opengridcomputing.com>

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

* Re: [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr
  2017-07-13 19:37 ` [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr Mustafa Ismail
  2017-07-13 20:25   ` Steve Wise
@ 2017-07-14  6:47   ` Greg KH
  1 sibling, 0 replies; 7+ messages in thread
From: Greg KH @ 2017-07-14  6:47 UTC (permalink / raw)
  To: Mustafa Ismail
  Cc: linux-rdma, dledford, swise, linux-kernel, stable, shiraz.saleem

On Thu, Jul 13, 2017 at 02:37:38PM -0500, Mustafa Ismail wrote:
> Initialize the port_num for iWARP in rdma_init_qp_attr.
> 
> Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
> ---
>  drivers/infiniband/core/cma.c | 2 ++
>  1 file changed, 2 insertions(+)

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>

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

* Re: [PATCH 1/2] RDMA/uverbs: Fix the check for port number
  2017-07-13 19:37 ` [PATCH 1/2] RDMA/uverbs: Fix the check for port number Mustafa Ismail
  2017-07-13 20:24   ` Steve Wise
@ 2017-07-14  6:48   ` Greg KH
  1 sibling, 0 replies; 7+ messages in thread
From: Greg KH @ 2017-07-14  6:48 UTC (permalink / raw)
  To: Mustafa Ismail
  Cc: linux-rdma, dledford, swise, linux-kernel, stable, shiraz.saleem

On Thu, Jul 13, 2017 at 02:37:37PM -0500, Mustafa Ismail wrote:
> The port number is only valid if IB_QP_PORT is set in the mask.
> So only check port number if it is valid to prevent modify_qp from
> failing due to an invalid port number.
> 
> Fixes: 5ecce4c9b17b("Check port number supplied by user verbs cmds")
> Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
> ---
>  drivers/infiniband/core/uverbs_cmd.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>

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

end of thread, other threads:[~2017-07-14  6:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-13 19:37 [PATCH 0/2] Fix modify_qp failure Mustafa Ismail
2017-07-13 19:37 ` [PATCH 1/2] RDMA/uverbs: Fix the check for port number Mustafa Ismail
2017-07-13 20:24   ` Steve Wise
2017-07-14  6:48   ` Greg KH
2017-07-13 19:37 ` [PATCH 2/2] RDMA/core: Initialize port_num in qp_attr Mustafa Ismail
2017-07-13 20:25   ` Steve Wise
2017-07-14  6:47   ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).