Fix send wr timeout when error cqe
Co-authored-by: zhongqin2020<zhongqin3@huawei.com>
# message auto-generated for no-merge-commit merge:
!583 merge master into master
Fix send wr timeout when error cqe
Created-by: zhongqin2020
Commit-by: zhongqin2020
Merged-by: cann-robot
Description: ## 描述
<!--在这里详细描述你的改动,包括改动的原因和所采取的方法。-->
【问题背景&根因分析】
rdma lite驱动中未正确处理qp状态,发生error cqe后(cqe中的内容部分字段可能是有问题的),lite驱动可能会错误的使用相应有问题的字段更新qp的tail指针
如果应用未感知error cqe继续调用post send下发wr可能导致驱动因tail指针异常判断为反压状态,持续反压,直到上层超时
【一句话修改方案】
由于修改driver包面临升级不及时,临时在cann包lite部分逻辑中加上异常状态判断的逻辑:轮询CQ时,若轮询到error cqe则更新qp_state为ERR,下发wr时,判断qp_state为ERR则返回报错。
## 关联的Issue
<!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #123-->
<!-- 如果这个PR不涉及Issue,可填写"NA"。-->
## 测试
<!--描述进行了哪些测试来验证你的改动。包括但不限于构造对应xx测试用例、二级冒烟、算子泛化等。-->
## 文档更新
<!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。-->
## 类型标签
<!-- [x] 表示选中 -->
- [x] Bug修复
- [ ] 新特性
- [ ] 性能优化
- [ ] 文档更新
- [ ] 其他,请描述:
See merge request: cann/hcomm!583