summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/ulp
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@mellanox.com>2019-02-12 23:12:47 -0500
committerJason Gunthorpe <jgg@mellanox.com>2019-02-19 12:13:39 -0500
commitea1075edcbab7d92f4e4ccf5490043f796bf78be (patch)
tree618fb95aa42e446d18020d6851bab321be2c3b4b /drivers/infiniband/ulp
parentf2a0e45f36b0a210ff2388ed5fa89f81019c07a1 (diff)
RDMA: Add and use rdma_for_each_port
We have many loops iterating over all of the end port numbers on a struct ib_device, simplify them with a for_each helper. Reviewed-by: Parav Pandit <parav@mellanox.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/infiniband/ulp')
-rw-r--r--drivers/infiniband/ulp/ipoib/ipoib_main.c4
-rw-r--r--drivers/infiniband/ulp/srp/ib_srp.c5
2 files changed, 5 insertions, 4 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_main.c b/drivers/infiniband/ulp/ipoib/ipoib_main.c
index ee4cca80f00b..48eda16db1a7 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib_main.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_main.c
@@ -2495,7 +2495,7 @@ static void ipoib_add_one(struct ib_device *device)
2495 struct list_head *dev_list; 2495 struct list_head *dev_list;
2496 struct net_device *dev; 2496 struct net_device *dev;
2497 struct ipoib_dev_priv *priv; 2497 struct ipoib_dev_priv *priv;
2498 int p; 2498 unsigned int p;
2499 int count = 0; 2499 int count = 0;
2500 2500
2501 dev_list = kmalloc(sizeof(*dev_list), GFP_KERNEL); 2501 dev_list = kmalloc(sizeof(*dev_list), GFP_KERNEL);
@@ -2504,7 +2504,7 @@ static void ipoib_add_one(struct ib_device *device)
2504 2504
2505 INIT_LIST_HEAD(dev_list); 2505 INIT_LIST_HEAD(dev_list);
2506 2506
2507 for (p = rdma_start_port(device); p <= rdma_end_port(device); ++p) { 2507 rdma_for_each_port (device, p) {
2508 if (!rdma_protocol_ib(device, p)) 2508 if (!rdma_protocol_ib(device, p))
2509 continue; 2509 continue;
2510 dev = ipoib_add_port("ib%d", device, p); 2510 dev = ipoib_add_port("ib%d", device, p);
diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c
index 84184910f038..151f4eba84b8 100644
--- a/drivers/infiniband/ulp/srp/ib_srp.c
+++ b/drivers/infiniband/ulp/srp/ib_srp.c
@@ -4127,7 +4127,8 @@ static void srp_add_one(struct ib_device *device)
4127 struct srp_device *srp_dev; 4127 struct srp_device *srp_dev;
4128 struct ib_device_attr *attr = &device->attrs; 4128 struct ib_device_attr *attr = &device->attrs;
4129 struct srp_host *host; 4129 struct srp_host *host;
4130 int mr_page_shift, p; 4130 int mr_page_shift;
4131 unsigned int p;
4131 u64 max_pages_per_mr; 4132 u64 max_pages_per_mr;
4132 unsigned int flags = 0; 4133 unsigned int flags = 0;
4133 4134
@@ -4194,7 +4195,7 @@ static void srp_add_one(struct ib_device *device)
4194 WARN_ON_ONCE(srp_dev->global_rkey == 0); 4195 WARN_ON_ONCE(srp_dev->global_rkey == 0);
4195 } 4196 }
4196 4197
4197 for (p = rdma_start_port(device); p <= rdma_end_port(device); ++p) { 4198 rdma_for_each_port (device, p) {
4198 host = srp_add_port(srp_dev, p); 4199 host = srp_add_port(srp_dev, p);
4199 if (host) 4200 if (host)
4200 list_add_tail(&host->list, &srp_dev->dev_list); 4201 list_add_tail(&host->list, &srp_dev->dev_list);