mirror of
https://github.com/torvalds/linux.git
synced 2026-07-31 19:47:08 +02:00
RDMA/hns: Support fast path for link-down events dispatching
hns3 NIC driver can directly notify the RoCE driver about link status events bypassing the netdev notifier. This can provide more timely event dispatching for ULPs. Signed-off-by: Yuyu Li <liyuyu6@huawei.com> Signed-off-by: Junxian Huang <huangjunxian6@hisilicon.com> Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
parent
3790137762
commit
20b6d8a7b9
|
|
@ -7178,9 +7178,22 @@ static int hns_roce_hw_v2_reset_notify(struct hnae3_handle *handle,
|
|||
return ret;
|
||||
}
|
||||
|
||||
static void hns_roce_hw_v2_link_status_change(struct hnae3_handle *handle,
|
||||
bool linkup)
|
||||
{
|
||||
struct hns_roce_dev *hr_dev = (struct hns_roce_dev *)handle->priv;
|
||||
struct net_device *netdev = handle->rinfo.netdev;
|
||||
|
||||
if (linkup || !hr_dev)
|
||||
return;
|
||||
|
||||
ib_dispatch_port_state_event(&hr_dev->ib_dev, netdev);
|
||||
}
|
||||
|
||||
static const struct hnae3_client_ops hns_roce_hw_v2_ops = {
|
||||
.init_instance = hns_roce_hw_v2_init_instance,
|
||||
.uninit_instance = hns_roce_hw_v2_uninit_instance,
|
||||
.link_status_change = hns_roce_hw_v2_link_status_change,
|
||||
.reset_notify = hns_roce_hw_v2_reset_notify,
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user