diff options
author | Ira Weiny <ira.weiny@intel.com> | 2015-05-13 20:02:56 -0400 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2015-05-20 12:36:17 -0400 |
commit | ab8be619b81a0d83706294bd791407e0f497d646 (patch) | |
tree | e36a5d2f71683df06edcf7494f0799a334d99521 | |
parent | 0cf18d7723055709faf51b50f5a33253b480637f (diff) |
IB/user_mad: Use new start/end port functions
Use the new common rdma_[start|end]_port functions instead of using
local variables and figuring it out on the fly.
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
-rw-r--r-- | drivers/infiniband/core/user_mad.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/drivers/infiniband/core/user_mad.c b/drivers/infiniband/core/user_mad.c index d451717047db..cc5001e850de 100644 --- a/drivers/infiniband/core/user_mad.c +++ b/drivers/infiniband/core/user_mad.c @@ -99,7 +99,6 @@ struct ib_umad_port { }; struct ib_umad_device { - int start_port, end_port; struct kobject kobj; struct ib_umad_port port[0]; }; @@ -1275,12 +1274,8 @@ static void ib_umad_add_one(struct ib_device *device) int s, e, i; int count = 0; - if (device->node_type == RDMA_NODE_IB_SWITCH) - s = e = 0; - else { - s = 1; - e = device->phys_port_cnt; - } + s = rdma_start_port(device); + e = rdma_end_port(device); umad_dev = kzalloc(sizeof *umad_dev + (e - s + 1) * sizeof (struct ib_umad_port), @@ -1290,9 +1285,6 @@ static void ib_umad_add_one(struct ib_device *device) kobject_init(&umad_dev->kobj, &ib_umad_dev_ktype); - umad_dev->start_port = s; - umad_dev->end_port = e; - for (i = s; i <= e; ++i) { if (!rdma_cap_ib_mad(device, i)) continue; @@ -1332,7 +1324,7 @@ static void ib_umad_remove_one(struct ib_device *device) if (!umad_dev) return; - for (i = 0; i <= umad_dev->end_port - umad_dev->start_port; ++i) { + for (i = 0; i <= rdma_end_port(device) - rdma_start_port(device); ++i) { if (rdma_cap_ib_mad(device, i)) ib_umad_kill_port(&umad_dev->port[i]); } |