已关闭
【缺陷报告】空指针解引用 - 文件data_compare_tiling.cpp - 函数HandleEmptyTensor - 行号154 #2768
zhangjunkai9创建于 17 天前关闭于 13 天前
陈思
16 天前 评论:
16 天前 评论:
16 天前 将 Nice_try 设为负责人
15 天前 关联了pull request:Fix nullptrDeref in data_compare_tiling
13 天前 关闭了 issue
13 天前 添加了label:resolved


缺陷信息
缺陷描述
HandleEmptyTensor 函数中,context->GetWorkspaceSizes(WORKSPACE_NUM) 返回的 wsSizes 指针未做空指针校验即在第154行执行 wsSizes[0]=sysWsSize 写入操作。GetWorkspaceSizes 是框架 API,官方开发指南模板(aicore_develop_guide.md:259-260)明确要求调用后使用 OP_CHECK_NULL_WITH_CONTEXT 进行空检查,ops-transformer 项目的 fia_tiling_base.h:89 也对同一 API 做了 nullptr 判定,证明该 API 在特定条件下(如内部内存不足)可返回 NULL。当前函数通过 DataCompareTilingFunc 入口可达(info.isEmptyTensor 为 true 时调用),缺陷路径可达。
事实核查
数据流证据
传播路径:
调用链
可达调用链1 起点:
(entry functions)→ 终点:optiling::HandleEmptyTensor深度:1修复建议
size_t* wsSizes = context->GetWorkspaceSizes(WORKSPACE_NUM); OP_CHECK_NULL_WITH_CONTEXT(context, wsSizes); wsSizes[0] = sysWsSize;