已合并
[fix]hccp include driver/ibv_extend.h #3663
xiongzhe创建于 7月11日
[fix]hccp include driver/ibv_extend.h #3663
已合并
从已删除 :master合入到cann/hcommmaster
Pull Request已成功合入, 合并人@CANN-robot
(感谢 xiongzhe 的贡献)atomgit-bot
7月11日 评论:
7月11日 评论:
变更摘要
此 PR 为 hccp 模块引入了 ibv_extend 第三方库的头文件包含机制。主要新增了 CMake 构建脚本 ibv_extend.cmake,用于从 driver 源码目录中查找并复制 ibv_extend 头文件;同时将 ibv_extend.h 头文件迁移至 external_depends 目录作为回退路径,使得 hccp 在编译时能够正确引用 RDMA 网卡驱动的扩展接口定义。
主要改动
- 新增
cmake/third_party/ibv_extend.cmake:定义了ibv_extend的 CMake 构建逻辑,优先从${HCOMM_DIR}/../driver/driver/src/custom/nda/ibv_extend搜索头文件并复制到构建目录,若该路径不存在则回退到external_depends/ibv_extend目录。 - 头文件路径重组织:
ibv_extend.h被重命名/移动至src/base_comm/resources/hccp/external_depends/ibv_extend/ibv_extend.h,作为 CMake 脚本中搜索失败时的兜底头文件来源。


atomgit-bot
7月11日 评论:
7月11日 评论:
代码审查
审查总结
逐文件审查结果:
| 文件 | 结果 |
|---|---|
cmake/third_party/ibv_extend.cmake |
3 个问题 (1×P1, 2×P3) |
src/base_comm/resources/hccp/external_depends/ibv_extend/ibv_extend.h |
无问题(纯重命名,无内容变更) |
src/base_comm/resources/hccp/rdma_agent/peer/CMakeLists.txt |
无问题(include 路径从已不存在的 nda 正确切换到 ibv_extend) |
src/base_comm/resources/hccp/rdma_service/CMakeLists.txt |
无问题(同上) |
按优先级统计:
- P1:1 个 —
ibv_extend.cmake未被任何 CMake 文件include(),整个文件为死代码,构建集成不完整 - P3:2 个 —
IBV_EXTEND_INSTALL_PATHS变量设置后从未使用(死变量);if(EXISTS ...)中变量未加引号(健壮性隐患,可选改进)
整体风险判断:中等。 核心问题是新增的 cmake 模块文件未集成到 cmake/device/CMakeLists.txt 中,导致驱动头文件拷贝机制完全不会执行。不过两个 CMakeLists.txt 中的 include 路径变更(nda → ibv_extend)是正确的,本地 external_depends/ibv_extend/ibv_extend.h 存在且可被正常引用,编译可以基于本地 fallback 头文件通过。建议在合入前补充 include() 调用以完成构建集成。
| 类型 | 数量 |
|---|---|
| 🔴 阻塞 | 1 |
| 🟡 建议 | 2 |
⛔ 需要修改


7月11日 添加了label:stat/needs-squash
此处折叠了89条消息 查看更多
7月23日 添加了label:lgtm
philo
7月23日 评论:
7月23日 评论:
/approve


7月23日 添加了label:approved
7月23日 合入了pull request
描述
hcomm黄区编译引用driver仓的ibv_extend.h
变更类型
请选择本次引入的变更类型:
关联的Issue
测试
已完成的测试用例和场景:
1.
2.
补充的UT用例:
文档更新
合入检查