Open
[需求]: 支持 BMC 作为 MCTP EP 接收并响应请求 #5
黄志毓Add on 23 days ago
23 days ago Added label: sig/sig-component-drivers
openUBMC-robot
23 days ago Comments:
23 days ago Comments:
欢迎来到 openUBMC 社区
Hey @hzy1010 , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 说明文档 或 论坛 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。您可以自助配置此仓库的 PR 合并规则,更多详情,请参阅机器人自助配置使用手册。
联系指引
有疑问可以联系 SIG: sig-component-drivers ,
维护者是: @dongyushan, @net_swift_wangchen, @sam_h1973, @u012924942, @weixin_37569011, @xiaoxinglxs ,
优秀贡献者是: @hzy1010, @leessential .


openUBMC-robot
23 days ago Comments:
23 days ago Comments:
Issue 工作流介绍
社区的需求和缺陷的工作流状态处于纳管中。
| 类型 | 上个状态 | 下个状态 | 评论命令 | 谁可以操作 |
|---|---|---|---|---|
| 需求 | 待办的 | 已接纳 | /todo2accepted | SIG组: sig-release-management (maintainer) |
| 需求 | 已接纳 | 开发中 | /accepted2developing | 仓库成员角色: Maintainer, Committer, Contributor, Owner |
| 需求 | 开发中 | 待验收 | /developing2UAT | 仓库成员角色: Maintainer, Committer, Contributor, Owner |
| 需求 | 待验收 | 已完成 | /UAT2done | SIG组: sig-QA (maintainer,committer) |
| 需求 | 待办的 | 已挂起 | /todo2suspended | SIG组: sig-release-management (maintainer) |
| 需求 | 已挂起 | 已接纳 | /suspended2accepted | SIG组: sig-release-management (maintainer) |
| 需求 | 待办的 | 已拒绝 | /todo2rejected | SIG组: sig-release-management (maintainer) |
| 需求 | 已拒绝 | 已接纳 | /rejected2accepted | SIG组: sig-release-management (maintainer) |


23 days ago Modify description of issue
18 days ago associated Kanban: openUBMC 26.12需求看板
14 days ago changed custom state from 待办的 to 已接纳
4 days ago Assign chzhpfoxjay_123 as responsible person
1 day ago Associated pull request
6 hours ago Associated pull request
所属版本
openUBMC 26.12
版本分支
openUBMC main
简要说明
mctpd 须支持 BMC 作为 PCIe EP 接收对端主动发起的 MCTP 请求(TO=1),经 VDM 驱动收包后完成重组、识别并应答。Control 类消息由框架直接响应,应用类消息(PLDM)交给上层业务处理。所有响应须经共享 MCTP 数据面的统一 TX 返回,保留 Tag、TO=0、回填上层关联字段。
前置条件
BMC运行正常、IMU正常运行
系统用户
开发人员,运维人员
主成功场景
对端主动发来 MCTP 请求(TO=1),经 VDM 驱动收包后进入 mctpd 统一 transport
mctpd 完成重组,按 Message Type 识别消息类型(Control 或 PLDM)
Control 类消息由 mctpd 核心直接响应
PLDM 类非控制消息经分发到注册的 responder handler 处理
响应经共享 MCTP 数据面的统一 TX 返回,设置 TO=0、保留请求 Tag、按当前有效路由与 Control 规则封装
非功能需求类型
(1)可靠性要求:进程异常退出后自动拉起并重新执行 MCTP 自发现流程恢复 EID 与路由表,不依赖持久化存储;普通事务为瞬态,进程退出即失效,重启后不伪装在途事务延续;MCTP 基础传输不保证重传送达,上层重试有限
(2)可维护性要求:提供统一日志(带 system_id 前缀区分多实例)和诊断信息
(3)可测试性要求:支持模拟对端请求验证 TO=1 方向的收包/重组/分发/响应全链路;UT/IT 须扩展覆盖 responder 新增能力
(4)性能要求:Control responder 应答时限满足 DSP0238 上限 120ms
(5)兼容性要求(和以前版本及周边配套):requester 外部行为须回归通过,既有消息类型处理与 Tag 管理不受影响
(6)安全要求:NA
(7)韧性要求:按 system_id 隔离实例,单 system 故障不影响其他 system;读异常不崩溃主服务;EID 注册表与 msg_tag 有界,满则拒绝新增
兼容性影响评估
NA
扩展场景(含异常场景)
NA
周边依赖
NA
约束
NA