mirror of https://gitee.com/openkylin/linux.git
d838c481e0
If send queue is still working when qp is in reset state by modify qp in destroy qp function, hardware will hold on and don't work in hip06 SoC. In current codes, RoCE driver check hardware pointer of sending and hardware pointer of processing to ensure that hardware has processed all the dbs of this qp. But while the environment of wire becomes not good, The checking time maybe too long. In order to solve this problem, RoCE driver created a workqueue at probe function. If there is a timeout when checking the status of qp, driver initialize work entry and push it into the workqueue, Work function will finish checking and release the related resources later. Signed-off-by: Wei Hu (Xavier) <xavier.huwei@huawei.com> Signed-off-by: Lijun Ou <oulijun@huawei.com> Signed-off-by: Dongdong Huang(Donald) <hdd.huang@huawei.com> Signed-off-by: Salil Mehta <salil.mehta@huawei.com> Signed-off-by: Doug Ledford <dledford@redhat.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
hns_roce_ah.c | ||
hns_roce_alloc.c | ||
hns_roce_cmd.c | ||
hns_roce_cmd.h | ||
hns_roce_common.h | ||
hns_roce_cq.c | ||
hns_roce_device.h | ||
hns_roce_eq.c | ||
hns_roce_eq.h | ||
hns_roce_hem.c | ||
hns_roce_hem.h | ||
hns_roce_hw_v1.c | ||
hns_roce_hw_v1.h | ||
hns_roce_main.c | ||
hns_roce_mr.c | ||
hns_roce_pd.c | ||
hns_roce_qp.c | ||
hns_roce_user.h |