已关闭
[Bug-Report|缺陷反馈]: 修复包互斥文件探测的资源泄漏和路径错误 #928
zhaowenrui创建于  12 天前关闭于  9 天前
zhaowenrui
zhaowenrui成员
12 天前 创建

Describe the current behavior / 问题描述 (Mandatory / 必填)

PackageEnvInfo::GetCurHostMutexFile 使用 open() 探测 libqueue_schedule.so 是否存在,但探测成功后未关闭文件描述符。重复调用可能造成文件描述符泄漏;同时若返回完整路径,调用方再次拼接 host so 路径会导致路径错误。

Environment / 环境信息 (Mandatory / 必填)

  • 仓库:cann/runtime
  • 分支基线:master
  • 环境:Linux

Steps to reproduce the issue / 重现步骤 (Mandatory / 必填)

  1. 配置 host so 路径,使 libqueue_schedule.so 存在。
  2. 重复调用 PackageEnvInfo::GetCurHostMutexFile(false)
  3. 观察进程打开的文件描述符数量持续增加,或观察返回完整路径被调用方重复拼接。

Describe the expected behavior / 预期结果 (Mandatory / 必填)

使用仓库封装的 mmAccess() 仅检查 queue so 是否存在,不创建文件描述符;GetCurHostMutexFile 始终返回文件名,由调用方统一拼接 host so 路径。

无特定运行日志。问题可由代码路径及新增单元测试复现和验证。

Special notes for this issue/备注 (Optional / 选填)

新增 queue so 存在和不存在两个 GetCurHostMutexFile 单元测试分支。

likedislike
zhaowenrui
zhaowenrui成员
12 天前 评论:

/assign

likedislike
CANN-robotCANN-robot成员
12 天前 将 zhaowenrui666 设为负责人
zhaowenruizhaowenrui成员
12 天前 关联了pull request:fix: 修复包互斥文件探测的资源泄漏和路径错误
zhangjiezhangjie成员
12 天前 关联了pull request:fix: 修复包互斥文件探测的资源泄漏和路径错误 (#928)
ykl999
ykl999成员
9 天前 评论:

问题解决已上库,关闭issue

likedislike
ykl999ykl999成员
9 天前 issue状态由 进行中 改变为 已解决
ykl999ykl999成员
9 天前 关闭了 issue