Closed
fix(drivers): 内存边界与异步生命周期修复及压力测试 #1307
fix(drivers): 内存边界与异步生命周期修复及压力测试 #1307
Closed
liuxingsenAdd on Sep 27Closed at 25 days ago
liuxingsenCollaborators
Sep 27

当前PR是否有AI参与:

[x ] 否
[] 是
__1. AI Agent 平台:
__2. AI 模型:
__3. Prompt上下文 :

PR功能描述 / 为什么需要这个合入:

本汇总 PR 停止作为合入入口,后续修复与验收由下表 10 个独立 PR 跟踪。原 PR 混合协议边界、调度器、设备异步收尾及测试工具,难以逐项审查和定位验证结果;拆分使每个问题类型能单独检视、验证和整合。

原分支及提交历史保留。关闭或替代本 PR 不代表原分支已合入,也不代表原有失败门禁和未解决检视意见已经自动修复。

修改方案:

各主题独立从目标主线 e4db788734f0d222c48294256f8ea1aa3e339dbb 提取;若后续主线前进,在对应 PR 正常整合并按其最终 SHA 重新核对。拆分的来源快照为 352873d572e66c0d44abce6222a90d343cdae2fc,保留已合入主线的 Hisi/Mucse、Scanner 等实现并去重。

序号 独立主题 替代 PR
1 NCSI 回复及 MAC/SN/PN/日志复制边界 !1326
2 总线、BitIO、芯片及 SMC 缓冲区边界 !1335
3 CSR1 Scheduler 与 Aggregate 宿主生命周期 !1329
4 CSR1 内嵌接口 timer 生命周期 !1330
5 NIC timer 收尾及生命周期回归 !1331
6 Huawei/Samsung NVMe timer 与升级线程收尾 !1332
7 packed PRBS 数值及 NVMe 128 位计数解析 !1333
8 独立测试夹具生命周期及当前行为断言 !1334
9 压力统计及 tests/README.md !1327
10 Lua 工具链完整性与缓存指纹 !1328

按本轮最终拆分约定,仅第3项 !1329(CSR1调度/宿主生命周期)和第6项 !1332(NVMe生命周期)分别从主线1.2.530升至1.2.531一次并维护CHANGELOG;其余8项维持主线版本,不修改CHANGELOG。协议边界等主题仍可能改变异常输入行为,这个版本归属约定不把它们描述为纯测试。十主题背景统一写入!1327的tests/README.md。后续主线变化时正常整合,保持各PR独立、每PR最多一次升版。

验证方案:

每个独立 PR 对自身最终源码执行对应构建和回归,保存提交 SHA、命令、原始日志、XML及必要的实际二进制/依赖哈希。宿主测试使用隔离临时目录和命名空间;配置、预编译依赖溯源限制和未执行项目在各 PR 的自验证报告中单独说明。远端门禁必须与该 PR 当前 SHA 对应。

测试建议:

在正式 Bingo/CI 依赖、产品配置和目标板继续验证协议异常输入、OS 上下电、设备移除、定时器重启及升级线程收尾。全量 50/200 轮压力与 ASan/UBSan 需要实际插桩构建及完整证据;原 Samsung 第 44 轮间歇性 SIGSEGV 不能仅凭单轮回归或拆分完成宣称闭环。

自验证报告:

  • 原汇总提交 352873d572e66c0d44abce6222a90d343cdae2fc 的历史记录:21 个定向 C++ 测试程序、3,256 个用例及 37 项脚本测试通过。该记录只适用于当时源码、构建配置和依赖,不能充当拆分后独立提交的验证结果。
  • docs/gtest-stress-50-20260927.md 属于更早的历史构建记录,不纳入本轮交付和验证计数;不能据此声称当前拆分 PR 完成新的 50/200 轮压力或 sanitizer 验收。
  • 替代 PR 的本轮实际测试数、最终 SHA、失败或未执行项和远端门禁,分别见上表各 PR 的自验证报告与检查页。这里不将不同分支、不同依赖的结果合并成一次全量通过。
  • 原 PR 拆分前读取的 352873d5 流水线为失败,机器人表格报告头文件检查失败;另有 AI 声明缺失留言。本说明更新和关闭操作本身不构成这些门禁已通过的证据。

该PR关联的issue

fixes #750

希望检视人员了解:

#750 保留为汇总追踪任务,各替代 PR 关联各自实际“任务”类型 issue。关闭本汇总 PR 不应直接关闭仍有未完成验收项的汇总任务。

原检视意见按问题类型迁移核查:压力统计进入主题 9;未使用且范围过宽的 sanitizer suppression 不随拆分提交;Aggregate 宿主引用进入主题 3;Mucse 既有实现去重和生命周期核查进入主题 5;NVMe 执行器绑定、timer 停止契约与升级线程进入主题 6。已经过时的意见仍需给出当前代码证据,技术前提不成立的意见应解释项目实际语义;未经实际整改和验证,不因拆分或关闭自动标记解决。

mc::timer::stop()、mc::shared_ptr 和执行器是项目实现契约,不能笼统视为标准智能指针自动保证线程安全或异步收尾。特别是绑定宿主 executor 不等于新建串行 strand,预编译 libmcpp 的真实构建来源仍以各 PR 保存的依赖记录为准。

likedislike
The current Pull Request has been closed by liuxingsen.
LliuxingsenCollaborators
Sep 27 Created pull request, commit 55d5ed11
openUBMC-robotopenUBMC-robotCollaborators
Sep 27 Added label: sig/sig-component-drivers
openUBMC-robot
openUBMC-robotCollaborators
Sep 27 Comments:

欢迎来到 openUBMC 社区

Hey @xiaoxinglxs , 感谢你对社区的贡献.

机器人使用手册

有关指令的使用,可以点击 说明文档 或 论坛 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。您可以自助配置此仓库的 PR 合并规则,更多详情,请参阅机器人自助配置使用手册。

联系指引

有疑问可以联系 SIG: sig-component-drivers ,
维护者是: @dongyushan, @net_swift_wangchen, @sam_h1973, @u012924942, @weixin_37569011, @xiaoxinglxs ,
优秀贡献者是: @adellonzzy, @avery-j, @changxingOpenUBMC, @chenshengfan, @dli_bmc, @huangjiapei, @leessential, @net_swift_tianwen, @xiapengc1, @yelvsub .

likedislike
openUBMC-robotopenUBMC-robotCollaborators
Sep 27 Added label: stat/needs-squash
openUBMC-robotopenUBMC-robotCollaborators
Sep 27 Added label: needs-issue
230 messages are collapsed here。 See more
openUBMC-robotopenUBMC-robotCollaborators
25 days ago Removed label: ci-running
openUBMC-robot
openUBMC-robotCollaborators
25 days ago Comments:
任务名称结果
pre-commit检查N/A
PR描述检查N/A
防投毒检查N/A
开源合规检查N/A
编译构建N/A
UT测试N/A
头文件检查N/A
AI ReviewN/A
ASAN检测N/A
likedislike
openUBMC-robotopenUBMC-robotCollaborators
25 days ago Added label: ci-failed
LliuxingsenCollaborators
25 days ago Modify description of pull request
LliuxingsenCollaborators
25 days ago Modify description of pull request