All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Wang <yun.wang@profitbricks.com>
To: Roland Dreier <roland@kernel.org>,
	Sean Hefty <sean.hefty@intel.com>,
	Hal Rosenstock <hal.rosenstock@gmail.com>,
	linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: Tom Tucker <tom@opengridcomputing.com>,
	Steve Wise <swise@opengridcomputing.com>,
	Hoang-Nam Nguyen <hnguyen@de.ibm.com>,
	Christoph Raisch <raisch@de.ibm.com>,
	Mike Marciniszyn <infinipath@intel.com>,
	Eli Cohen <eli@mellanox.com>,
	Faisal Latif <faisal.latif@intel.com>,
	Jack Morgenstein <jackm@dev.mellanox.co.il>,
	Or Gerlitz <ogerlitz@mellanox.com>,
	Haggai Eran <haggaie@mellanox.com>,
	Ira Weiny <ira.weiny@intel.com>, Tom Talpey <tom@talpey.com>,
	Jason Gunthorpe <jgunthorpe@obsidianresearch.com>,
	Doug Ledford <dledford@redhat.com>,
	hal@dev.mellanox.co.il, Michael Wang <yun.wang@profitbricks.com>
Subject: [PATCH v4 11/27] IB/Verbs: Reform route related part in IB-core cma
Date: Thu, 16 Apr 2015 10:08:30 +0200	[thread overview]
Message-ID: <552F6DFE.2060909@profitbricks.com> (raw)
In-Reply-To: <552F6CF2.4000606@profitbricks.com>


Use raw management helpers to reform route related part in IB-core cma.

Cc: Steve Wise <swise@opengridcomputing.com>
Cc: Tom Talpey <tom@talpey.com>
Cc: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Cc: Doug Ledford <dledford@redhat.com>
Cc: Ira Weiny <ira.weiny@intel.com>
Cc: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Michael Wang <yun.wang@profitbricks.com>
---
 drivers/infiniband/core/cma.c  | 31 ++++++++-----------------------
 drivers/infiniband/core/ucma.c | 25 ++++++-------------------
 2 files changed, 14 insertions(+), 42 deletions(-)

diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c
index 6b8a64d..4adb909 100644
--- a/drivers/infiniband/core/cma.c
+++ b/drivers/infiniband/core/cma.c
@@ -923,13 +923,9 @@ static inline int cma_user_data_offset(struct rdma_id_private *id_priv)
 
 static void cma_cancel_route(struct rdma_id_private *id_priv)
 {
-	switch (rdma_port_get_link_layer(id_priv->id.device, id_priv->id.port_num)) {
-	case IB_LINK_LAYER_INFINIBAND:
+	if (rdma_tech_ib(id_priv->id.device, id_priv->id.port_num)) {
 		if (id_priv->query)
 			ib_sa_cancel_query(id_priv->query_id, id_priv->query);
-		break;
-	default:
-		break;
 	}
 }
 
@@ -1957,26 +1953,15 @@ int rdma_resolve_route(struct rdma_cm_id *id, int timeout_ms)
 		return -EINVAL;
 
 	atomic_inc(&id_priv->refcount);
-	switch (rdma_node_get_transport(id->device->node_type)) {
-	case RDMA_TRANSPORT_IB:
-		switch (rdma_port_get_link_layer(id->device, id->port_num)) {
-		case IB_LINK_LAYER_INFINIBAND:
-			ret = cma_resolve_ib_route(id_priv, timeout_ms);
-			break;
-		case IB_LINK_LAYER_ETHERNET:
-			ret = cma_resolve_iboe_route(id_priv);
-			break;
-		default:
-			ret = -ENOSYS;
-		}
-		break;
-	case RDMA_TRANSPORT_IWARP:
+	if (rdma_tech_ib(id->device, id->port_num))
+		ret = cma_resolve_ib_route(id_priv, timeout_ms);
+	else if (rdma_tech_iboe(id->device, id->port_num))
+		ret = cma_resolve_iboe_route(id_priv);
+	else if (rdma_tech_iwarp(id->device, id->port_num))
 		ret = cma_resolve_iw_route(id_priv, timeout_ms);
-		break;
-	default:
+	else
 		ret = -ENOSYS;
-		break;
-	}
+
 	if (ret)
 		goto err;
 
diff --git a/drivers/infiniband/core/ucma.c b/drivers/infiniband/core/ucma.c
index 45d67e9..7331c6c 100644
--- a/drivers/infiniband/core/ucma.c
+++ b/drivers/infiniband/core/ucma.c
@@ -722,26 +722,13 @@ static ssize_t ucma_query_route(struct ucma_file *file,
 
 	resp.node_guid = (__force __u64) ctx->cm_id->device->node_guid;
 	resp.port_num = ctx->cm_id->port_num;
-	switch (rdma_node_get_transport(ctx->cm_id->device->node_type)) {
-	case RDMA_TRANSPORT_IB:
-		switch (rdma_port_get_link_layer(ctx->cm_id->device,
-			ctx->cm_id->port_num)) {
-		case IB_LINK_LAYER_INFINIBAND:
-			ucma_copy_ib_route(&resp, &ctx->cm_id->route);
-			break;
-		case IB_LINK_LAYER_ETHERNET:
-			ucma_copy_iboe_route(&resp, &ctx->cm_id->route);
-			break;
-		default:
-			break;
-		}
-		break;
-	case RDMA_TRANSPORT_IWARP:
+
+	if (rdma_tech_ib(ctx->cm_id->device, ctx->cm_id->port_num))
+		ucma_copy_ib_route(&resp, &ctx->cm_id->route);
+	else if (rdma_tech_iboe(ctx->cm_id->device, ctx->cm_id->port_num))
+		ucma_copy_iboe_route(&resp, &ctx->cm_id->route);
+	else if (rdma_tech_iwarp(ctx->cm_id->device, ctx->cm_id->port_num))
 		ucma_copy_iw_route(&resp, &ctx->cm_id->route);
-		break;
-	default:
-		break;
-	}
 
 out:
 	if (copy_to_user((void __user *)(unsigned long)cmd.response,
-- 
2.1.0

  parent reply	other threads:[~2015-04-16  8:08 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-16  8:04 [PATCH v4 00/27] IB/Verbs: IB Management Helpers Michael Wang
2015-04-16  8:04 ` Michael Wang
2015-04-16  8:04 ` [PATCH v4 01/27] IB/Verbs: Implement new callback query_transport() Michael Wang
     [not found] ` <552F6CF2.4000606-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16  8:05   ` [PATCH v4 02/27] IB/Verbs: Implement raw management helpers Michael Wang
2015-04-16  8:05     ` Michael Wang
2015-04-16  8:05   ` [PATCH v4 03/27] IB/Verbs: Reform IB-core mad/agent/user_mad Michael Wang
2015-04-16  8:05     ` Michael Wang
2015-04-16 12:43     ` Hal Rosenstock
     [not found]       ` <552FAE66.6020900-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-04-16 12:51         ` Michael Wang
2015-04-16 12:51           ` Michael Wang
2015-04-16  8:05   ` [PATCH v4 04/27] IB/Verbs: Reform IB-core cm Michael Wang
2015-04-16  8:05     ` Michael Wang
     [not found]     ` <552F6D67.1070509-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 12:43       ` Hal Rosenstock
2015-04-16 12:43         ` Hal Rosenstock
     [not found]         ` <552FAE87.50303-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-04-16 12:55           ` Michael Wang
2015-04-16 12:55             ` Michael Wang
2015-04-16  8:06   ` [PATCH v4 05/27] IB/Verbs: Reform IB-core sa_query Michael Wang
2015-04-16  8:06     ` Michael Wang
2015-04-16  8:06   ` [PATCH v4 06/27] IB/Verbs: Reform IB-core multicast Michael Wang
2015-04-16  8:06     ` Michael Wang
2015-04-16  8:07   ` [PATCH v4 07/27] IB/Verbs: Reform IB-ulp ipoib Michael Wang
2015-04-16  8:07     ` Michael Wang
2015-04-16  8:08   ` [PATCH v4 10/27] IB/Verbs: Reform cm related part in IB-core cma/ucm Michael Wang
2015-04-16  8:08     ` Michael Wang
     [not found]     ` <552F6DEA.9080701-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 13:10       ` Hal Rosenstock
2015-04-16 13:10         ` Hal Rosenstock
     [not found]         ` <552FB4D0.5080302-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-04-16 13:19           ` Michael Wang
2015-04-16 13:19             ` Michael Wang
     [not found]             ` <552FB6EF.80107-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 14:31               ` Hefty, Sean
2015-04-16 14:31                 ` Hefty, Sean
     [not found]                 ` <1828884A29C6694DAF28B7E6B8A82373A8FC22C3-P5GAC/sN6hkd3b2yrw5b5LfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-16 15:22                   ` Michael Wang
2015-04-16 15:22                     ` Michael Wang
     [not found]                     ` <552FD3BE.4090204-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 17:21                       ` Tom Talpey
2015-04-16 17:21                         ` Tom Talpey
     [not found]                         ` <552FEFAC.6080402-CLs1Zie5N5HQT0dZR+AlfA@public.gmane.org>
2015-04-16 17:30                           ` Hefty, Sean
2015-04-16 17:30                             ` Hefty, Sean
     [not found]                             ` <1828884A29C6694DAF28B7E6B8A82373A8FC2508-P5GAC/sN6hkd3b2yrw5b5LfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-17  8:27                               ` Michael Wang
2015-04-17  8:27                                 ` Michael Wang
2015-04-17  8:11                           ` Michael Wang
2015-04-17  8:11                             ` Michael Wang
2015-04-16 15:58       ` Jason Gunthorpe
2015-04-16 15:58         ` Jason Gunthorpe
2015-04-16 16:55         ` Hefty, Sean
     [not found]           ` <1828884A29C6694DAF28B7E6B8A82373A8FC2452-P5GAC/sN6hkd3b2yrw5b5LfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-04-16 16:57             ` Jason Gunthorpe
2015-04-16 16:57               ` Jason Gunthorpe
     [not found]         ` <20150416155823.GB21809-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2015-04-16 17:38           ` Hal Rosenstock
2015-04-16 17:38             ` Hal Rosenstock
     [not found]             ` <552FF37F.8050306-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-04-16 17:41               ` Weiny, Ira
2015-04-16 17:41                 ` Weiny, Ira
2015-04-16 17:48               ` Jason Gunthorpe
2015-04-16 17:48                 ` Jason Gunthorpe
2015-04-17  8:36           ` Michael Wang
2015-04-17  8:36             ` Michael Wang
2015-04-16  8:08   ` [PATCH v4 12/27] IB/Verbs: Reform mcast related part in IB-core cma Michael Wang
2015-04-16  8:08     ` Michael Wang
2015-04-16  8:10   ` [PATCH v4 16/27] IB/Verbs: Use management helper cap_ib_mad() Michael Wang
2015-04-16  8:10     ` Michael Wang
2015-04-16  8:11   ` [PATCH v4 17/27] IB/Verbs: Use management helper cap_ib_smi() Michael Wang
2015-04-16  8:11     ` Michael Wang
2015-04-16  8:12   ` [PATCH v4 19/27] IB/Verbs: Use management helper cap_iw_cm() Michael Wang
2015-04-16  8:12     ` Michael Wang
2015-04-16  8:13   ` [PATCH v4 22/27] IB/Verbs: Use management helper cap_ipoib() Michael Wang
2015-04-16  8:13     ` Michael Wang
2015-04-16  8:14   ` [PATCH v4 24/27] IB/Verbs: Use management helper cap_af_ib() Michael Wang
2015-04-16  8:14     ` Michael Wang
2015-04-16  8:15   ` [PATCH v4 26/27] IB/Verbs: Clean up rdma_ib_or_iboe() Michael Wang
2015-04-16  8:15     ` Michael Wang
2015-04-16  8:15   ` [PATCH v4 27/27] IB/Verbs: Cleanup rdma_node_get_transport() Michael Wang
2015-04-16  8:15     ` Michael Wang
     [not found]     ` <552F6FB4.3060903-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 13:36       ` Hal Rosenstock
2015-04-16 13:36         ` Hal Rosenstock
     [not found]         ` <552FBAD6.6000400-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-04-16 13:41           ` Michael Wang
2015-04-16 13:41             ` Michael Wang
     [not found]             ` <552FBBEC.3020606-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 13:42               ` Hal Rosenstock
2015-04-16 13:42                 ` Hal Rosenstock
2015-04-16 13:45                 ` Michael Wang
     [not found]                   ` <552FBCF4.2070105-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 13:51                     ` Tom Tucker
2015-04-16 13:51                       ` Tom Tucker
2015-04-16  8:07 ` [PATCH v4 08/27] IB/Verbs: Reform IB-ulp xprtrdma Michael Wang
2015-04-16  8:07 ` [PATCH v4 09/27] IB/Verbs: Reform IB-core verbs/uverbs_cmd/sysfs Michael Wang
2015-04-16  8:08 ` Michael Wang [this message]
2015-04-16  8:09 ` [PATCH v4 13/27] IB/Verbs: Reserve legacy transport type in 'dev_addr' Michael Wang
2015-04-16  8:09 ` [PATCH v4 14/27] IB/Verbs: Reform cma_acquire_dev() Michael Wang
     [not found]   ` <552F6E43.2070700-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 13:19     ` Hal Rosenstock
2015-04-16 13:19       ` Hal Rosenstock
     [not found]       ` <552FB6CA.1040106-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-04-16 13:35         ` Michael Wang
2015-04-16 13:35           ` Michael Wang
     [not found]           ` <552FBA93.1030304-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 13:41             ` Hal Rosenstock
2015-04-16 13:41               ` Hal Rosenstock
2015-04-16  8:10 ` [PATCH v4 15/27] IB/Verbs: Reform rest part in IB-core cma Michael Wang
2015-04-16  8:12 ` [PATCH v4 18/27] IB/Verbs: Use management helper cap_ib_cm() Michael Wang
2015-04-16  8:12 ` [PATCH v4 20/27] IB/Verbs: Use management helper cap_ib_sa() Michael Wang
     [not found]   ` <552F6EFE.70500-EIkl63zCoXaH+58JC4qpiA@public.gmane.org>
2015-04-16 13:36     ` Hal Rosenstock
2015-04-16 13:36       ` Hal Rosenstock
     [not found]       ` <552FBAC7.3020304-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2015-04-16 13:38         ` Michael Wang
2015-04-16 13:38           ` Michael Wang
2015-04-16  8:13 ` [PATCH v4 21/27] IB/Verbs: Use management helper cap_ib_mcast() Michael Wang
2015-04-16  8:14 ` [PATCH v4 23/27] IB/Verbs: Use management helper cap_read_multi_sge() Michael Wang
2015-04-16  8:15 ` [PATCH v4 25/27] IB/Verbs: Use management helper cap_eth_ah() Michael Wang

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=552F6DFE.2060909@profitbricks.com \
    --to=yun.wang@profitbricks.com \
    --cc=dledford@redhat.com \
    --cc=eli@mellanox.com \
    --cc=faisal.latif@intel.com \
    --cc=haggaie@mellanox.com \
    --cc=hal.rosenstock@gmail.com \
    --cc=hal@dev.mellanox.co.il \
    --cc=hnguyen@de.ibm.com \
    --cc=infinipath@intel.com \
    --cc=ira.weiny@intel.com \
    --cc=jackm@dev.mellanox.co.il \
    --cc=jgunthorpe@obsidianresearch.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=ogerlitz@mellanox.com \
    --cc=raisch@de.ibm.com \
    --cc=roland@kernel.org \
    --cc=sean.hefty@intel.com \
    --cc=swise@opengridcomputing.com \
    --cc=tom@opengridcomputing.com \
    --cc=tom@talpey.com \
    /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.