PR 21725 Review Report

标题:urma: fix Clos networking and add a new interface get_path_set.

审查结论:Request Changes

详细审查结果

补丁格式 warning

  • inclusion-tag 应使用 driver inclusion
  • category: bugfix 与内容不完全匹配(更像 feature)
  • bugzilla 正确

KABI/KAPI 兼容性 warning

  • 新增 EXPORT_SYMBOL(ubcore_get_path_set)
  • 新增 UAPI 结构体: ubcore_path_set, ubcore_path, ubcore_node_id
  • ubcore_uvs_global_cmd 枚举新增 UBCORE_CMD_GET_PATH_SET = 4
  • ubagg_topo_node 结构体字段重排(id->type/node_id)

安全性 pass

  • 新增边界检查完整
  • 无 obvious 安全问题

逻辑正确性 pass

  • Clos 与 FullMesh 分支处理逻辑清晰
  • ubcore_get_path_set 参数校验完整
  • 路径数量上限检查正确

Backport 验证 N/A

  • 非 backport

发现问题汇总

严重级别类别问题描述修复建议
highKABI/UAPIubagg_topo_node 结构体布局发生 BREAKING 变更: 原第一个字段 uint32_t id 被替换为 type + super_node_id + node_id。该结构体通过 create_ubagg_topo_map_from_user() 从 userspace copy_from_user 传入,旧版用户态工具会直接传入错误数据必须解决 UAPI 兼容性问题: 1) 保留原 id 字段并标记 deprecated; 2) 或在 copy_from_user 前进行版本识别/转换; 3) 或将变更限制在内部副本中
mediumKABI新增 EXPORT_SYMBOL(ubcore_get_path_set),需确认是否已加入 openEuler KABI 白名单联系 KABI 维护者确认白名单状态
mediumpatch formatinclusion-tag 使用 'urma inclusion' 而非标准 'driver inclusion'修改为 driver inclusion
lowstyleubcore_get_path_set 函数缩进不统一修正缩进为内核标准

修复建议

  • 必须解决 ubagg_topo_node 的 UAPI 兼容性问题后再合入
  • 确认 EXPORT_SYMBOL 白名单
  • 补充用户态工具同步更新说明
⚠️ 免责声明

本网站内容由 AI 工具辅助生成,仅供参考和学习使用。作者不对内容的准确性、完整性和适用性做任何保证。使用本站信息所造成的任何损失,作者不承担任何责任。请在生产环境使用前进行充分测试和验证。