12 Star 5 Fork 37

src-openEuler / kpatch

 / 详情

有不支持的段,导致热补丁编译失败

已完成
缺陷
创建于  
2022-10-10 19:25

优先级:

次要

详细描述:

【OS版本】:被测的版本信息

【测试类型】:发现问题的测试类型,功能测试、可靠性测试、性能测试等

功能测试

【测试步骤】:详细描述可以复现该问题的测试步骤

多个热补丁用例编译报错,都是此类问题

编译: /opt/patch_workspace/make_hotpatch -d .new -i ATPatch001 -m /home/feature-test/testcases/TestEL_HOTPATCH/kernel/hotpatch-make/../hotpatch-test

报错:

ERROR: testmod_drv2.o: 2 unsupported section change

...

testmod_drv2.o: changed function: modify_const_string2_show

testmod_drv2.o: new function: new_function_macro2

testmod_drv2.o: changed function: add_inline_func2_show

testmod_drv2.o: changed section .return_sites not selected for inclusion

testmod_drv2.o: changed section .rela.return_sites not selected for inclusion

/usr/libexec/kpatch/create-diff-object: unreconcilable difference

ERROR: 2 error encountered. Check /root/.kpatch/build.log for more details.

error: invoke kpatch-build shell script to build patch failed

make[3]: [Makefile:50: all] Error 1

【结果输出】:根据上述测试步骤执行后,系统的实际输出

编译失败

【预期输出】:系统在上述测试步骤操作后,按照系统设计应该输出的结果

编译成功

【测试代码】:发现问题的测试代码,或者关键片段,能指导问题复现

【初步定位结论】:已明确的相关定位信息或者相关的沟通交流信息

原因分析:

【是否新引入rpm包,是否进行了安全编译选项扫描】

【定位分析】

1。失败10个用例,报错均为存在不支持的段 .return_sites。此段由近期回合的hulk内核补丁引入。kpatch社区相应修复补丁已回合到主线,已验证可以修复其中9个用例失败问题。

2。剩余1个失败用例报错变为:补丁前后,二进制中 .return_sites 段的 entSize 属性由4变为0,存在差异。通过对.return_sites段忽略entSize属性差异,允许继续制作补丁,解决用例编译失败问题。

【对外部是否有影响】

评论 (2)

peulerosci 创建了缺陷

Hi peulerosci, welcome to the openEuler Community.
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here.
If you have any questions, please contact the SIG: Base-service, and any of the maintainers: @hexiaowen , @zhujianwei001 , @Monday , @谢志鹏 , @Lv Ying , @gaoruoshu , @znzjugod , @HuBin95 , @陈子扬

openeuler-ci-bot 添加了
 
sig/Base-service
标签
HuBin95 任务状态待办的 修改为已完成

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(3)
5329419 openeuler ci bot 1632792936
1
https://gitee.com/src-openeuler/kpatch.git
git@gitee.com:src-openeuler/kpatch.git
src-openeuler
kpatch
kpatch

搜索帮助