已关闭
【UB Turbo】【次要】pendingTargetConfig多字段无锁发布,并发可读到撕裂配置并下发迁移 #46
BadRockovo创建于  9月20日关闭于  3 天前
BadRockovo
BadRockovo
9月20日 创建

【缺陷描述】:请补充详细的缺陷问题现象描述

StagePendingMigrationTargets/PublishProcessManageCandidate 在未持有 slot->attrLock 的情况下多字段写入 active->pendingTargetConfig 与 pendingTargetConfigValid,而扫描线程 ApplyPendingMigrationTargets 无锁读取;aarch64 上无同步原语保证先写 config 后写 valid 的可见顺序,并发时可读到 count 与 targets 不一致的撕裂配置并下发迁移。

一、缺陷信息

属性 内容
【缺陷类型】 缺陷
【缺陷所属组件】 UB Turbo
【代码仓】 https://gitcode.com/openeuler/ubturbo
【问题位置】 plugins/smap/src/user/manage/manage_remote.c:659
【问题类型】 时间状态
【风险等级】 中等
【优先级】 次要
【缺陷描述】 StagePendingMigrationTargets/PublishProcessManageCandidate 在未持有 slot->attrLock 的情况下多字段写入 active->pendingTargetConfig 与 pendingTargetConfigValid,而扫描线程 ApplyPendingMigrationTargets 无锁读取;aarch64 上无同步原语保证先写 config 后写 valid 的可见顺序,并发时可读到 count 与 targets 不一致的撕裂配置并下发迁移。

【缺陷所属的os版本】

【内核版本】

【缺陷所属软件及版本号】

【环境信息】

硬件信息

  • 提供跟硬件相关的信息,如架构、cpu和内存规格等
  • 虚拟机场景,额外补充宿主机os版本类型

软件信息

  • 跟缺陷所属软件相关的其它软件版本信息(如软件包构建失败由gcc引起,请填写gcc的版本号)

网络信息

  • 如果有特殊组网,请提供网络拓扑信息以及网络数据走向

【问题复现步骤】

【实际结果】

【期望结果】

【其他相关附件信息】

【缺陷详情及分析指导参考链接】

二、缺陷分析结构反馈
影响性分析说明:

缺陷严重等级:(Critical/High/Moderate/Low)

缺陷根因说明:

受影响版本排查(受影响/不受影响):
openEuler-20.03-LTS-SP4
openEuler-22.03-LTS-SP4
openEuler-24.03-LTS-SP1
openEuler-24.03-LTS-SP3
openEuler-24.03-LTS-SP4

修复是否涉及abi变化(是/否):
openEuler-20.03-LTS-SP4
openEuler-22.03-LTS-SP4
openEuler-24.03-LTS-SP1
openEuler-24.03-LTS-SP3
openEuler-24.03-LTS-SP4

likedislike
openeuler-ci-botopeneuler-ci-bot成员
9月20日 将 leeCii1 设为负责人
openeuler-ci-botopeneuler-ci-bot成员
9月20日 修改了issue 的描述
openeuler-ci-botopeneuler-ci-bot成员
9月20日 将 BadRockovo、will_niutao、liliang_euler、wsoydl、hanjunguo、jerry_lilijun 设为负责人
openeuler-ci-bot
openeuler-ci-bot成员
9月20日 评论:

以下的要求不是强制性的, 未按模板评论时对issue无任何影响
issue处理注意事项:
1. 当前issue受影响的分支提交pr时, 须在pr描述中填写当前issue编号进行关联, 否则无法关闭当前issue;
2. 模板内容需要填写完整, 无论是受影响或者不受影响都需要填写完整内容,未引入的分支不需要填写, 否则无法关闭当前issue;
3. 以下为模板中需要填写完整的内容, 请复制到评论区回复, 注: 内容的标题名称(影响性分析说明, 缺陷严重等级, 受影响版本排查(受影响/不受影响), 修复是否涉及abi变化(是/否))不能省略,省略后defect-manager将无法正常解析填写内容.
评论区可能使用到的指令说明:

指令 指令说明 使用权限
/check-issue 触发defect-manager校验 不限
/reason xxx /reason +挂起或取消条件 不限

影响性分析说明:

缺陷严重等级:(Critical/High/Moderate/Low)

缺陷根因说明:

受影响版本排查(受影响/不受影响):

  1. openEuler-20.03-LTS-SP4:
  2. openEuler-22.03-LTS-SP4:
  3. openEuler-24.03-LTS-SP1:
  4. openEuler-24.03-LTS-SP3:
  5. openEuler-24.03-LTS-SP4:

abi变化(是/否):

  1. openEuler-20.03-LTS-SP4:
  2. openEuler-22.03-LTS-SP4:
  3. openEuler-24.03-LTS-SP1:
  4. openEuler-24.03-LTS-SP3:
  5. openEuler-24.03-LTS-SP4:

缺陷issue处理具体操作请参考:
https://atomgit.com/openeuler/cve-manager/blob/master/cve-vulner-manager/doc/md/defect-manager-manual.md
pr关联issue具体操作请参考:
https://docs.atomgit.com/docs/help/home/org_project/pullrequests/pr-related-issue

likedislike
openeuler-ci-botopeneuler-ci-bot成员
9月20日 添加了label:sig/sig-UnifiedBus
openeuler-ci-botopeneuler-ci-bot成员
9月20日 添加了label:DEFECT/UNFIXED
openeuler-ci-bot
openeuler-ci-bot成员
9月20日 评论:

Welcome To openEuler Community

Hey @BadRockovo , thanks for your contribution to the community.

Bot Usage Manual

I'm the Bot here serving you. You can find the instructions on how to interact with me at Here . That means you can comment below every pull request or issue to trigger Bot Commands. You can self-configure the PR merge rules for this repository. For more details, please refer to Here.

Contact Guide

If you have any questions, please contact the SIG: sig-UnifiedBus ,
and any of the maintainers: @hanjunguo, @jerry_lilijun, @liliang_euler, @will_niutao, @wsoydl ,
and any of the committers: @leeCii1, @meng_zhaohui, @ray-yang0218, @woquzhao12138 .

likedislike
woquzhao12138woquzhao12138成员
3 天前 issue状态由 待办的 改变为 已完成
woquzhao12138woquzhao12138成员
3 天前 关闭了 issue
openeuler-ci-botopeneuler-ci-bot成员
3 天前 删除了label:DEFECT/UNFIXED
openeuler-ci-bot
openeuler-ci-bot成员
3 天前 评论:

@BadRockovo 未对受影响版本排查/abi变化进行分析

likedislike
openeuler-ci-bot
openeuler-ci-bot成员
3 天前 评论:

@BadRockovo 未对受影响版本排查/abi变化进行分析

likedislike
woquzhao12138woquzhao12138成员
3 天前 关联了pull request:Feature : 源码包同步至 1.1.0,更新 spec/dkms/update.sh 打包配置