summaryrefslogtreecommitdiff
path: root/drivers/infiniband/sw/rxe/rxe_sysfs.c
diff options
context:
space:
mode:
authorYuval Shaia <yuval.shaia@oracle.com>2018-12-14 08:05:49 -0800
committerJason Gunthorpe <jgg@mellanox.com>2018-12-20 14:20:58 -0700
commitf55c3ec42a97bca408f0208ec08e3382340c7be7 (patch)
tree6d7a22f044cdc2ebfb4823f431032732162923b8 /drivers/infiniband/sw/rxe/rxe_sysfs.c
parentd5108e69fe013ff47ab815b849caba9cc33ca1e5 (diff)
IB/rxe: Reuse code which sets port state
Same code is executed in both rxe_param_set_add and rxe_notify functions. Make one function and call it from both places. Since both callers already have a rxe object use it directly instead of deriving it from the net device. Signed-off-by: Yuval Shaia <yuval.shaia@oracle.com> Reviewed-by: Steve Wise <swise@opengridcomputing.com>  Reviewed-by: Bart Van Assche <bart.vanassche@wdc.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/infiniband/sw/rxe/rxe_sysfs.c')
-rw-r--r--drivers/infiniband/sw/rxe/rxe_sysfs.c18
1 files changed, 1 insertions, 17 deletions
diff --git a/drivers/infiniband/sw/rxe/rxe_sysfs.c b/drivers/infiniband/sw/rxe/rxe_sysfs.c
index 73a19f808e1b..95a15892f7e6 100644
--- a/drivers/infiniband/sw/rxe/rxe_sysfs.c
+++ b/drivers/infiniband/sw/rxe/rxe_sysfs.c
@@ -53,22 +53,6 @@ static int sanitize_arg(const char *val, char *intf, int intf_len)
return len;
}
-static void rxe_set_port_state(struct net_device *ndev)
-{
- struct rxe_dev *rxe = net_to_rxe(ndev);
- bool is_up = netif_running(ndev) && netif_carrier_ok(ndev);
-
- if (!rxe)
- goto out;
-
- if (is_up)
- rxe_port_up(rxe);
- else
- rxe_port_down(rxe); /* down for unknown state */
-out:
- return;
-}
-
static int rxe_param_set_add(const char *val, const struct kernel_param *kp)
{
int len;
@@ -104,7 +88,7 @@ static int rxe_param_set_add(const char *val, const struct kernel_param *kp)
goto err;
}
- rxe_set_port_state(ndev);
+ rxe_set_port_state(rxe);
dev_info(&rxe->ib_dev.dev, "added %s\n", intf);
err:
if (ndev)