中文
注册

REE Patch加载失败

现象描述

存在以下一条或多条现象描述:

  • insmod tzdriver.ko指令失败,提示“Operation not permitted”。

  • 加载teecd失败,teecd守护进程异常退出。

可能原因

  1. BIOS中TEE Config未打开TEE开关选项。
  2. BIOS中TEE Config配置安全内存不合理,导致TEE OS启动失败。
  3. tzdriver.ko内核模块与当前运行环境内核版本不一致。
  4. tzdriver.ko未加载情况下,运行用户态teecd守护进程。
  5. TEE OS固件版本和REE Patch版本不匹配。

处理步骤

排查思路如图1所示。

图1 REE Patch加载失败排查思路
  1. 检查iBMC日志,观察TEE OS启动日志。

    登录iBMC web页面,依次选择“维护诊断 > iBMC日志 > 操作日志”,观察最近一次服务器启动日志中TEE OS加载日志。

    • 不存在TEE OS启动日志信息,当前BIOS中TEE使能开关关闭,请参考配置BIOS打开Support TEE开关选项。
    • 提示“tee os load fail”,当前TEE OS启动失败,请参考2进一步排查。
    • 提示“tee os load ok”,当前TEE OS已正常启动,请参考3进一步排查。
  2. 检查系统串口数据。

    登录iBMC web页面,依次选择“维护诊断 >系统日志”,下载2M的串口数据。检查最新一次服务器启动日志中TEE OS加载日志(例如可搜索关键字TEE OS)。

    • 提示“TEE OS Load FAIL”,且有安全内存分配适配失败日志“AllocaTeeMem Fail”,当前安全内存配置不合理导致BIOS安全内存分配失败,启动TEE OS失败。请参考安全内存规格说明重新配置安全内存大小。

    • 非安全内存分配失败问题导致TEE OS加载失败,请收集相关串口日志,联系华为技术支持处理。
  3. 检查tzdriver与当前内核版本是否匹配。
    • insmod tzdriver.ko提示“Invalid module format”,且用dmesg观察内核日志,有“tzdriver: disagree about version of symbol module_layout”类似输出。

      解决办法:基于当前内核版本的内核源码,重新编译tzdriver内核模块。

    • 在内核版本匹配情况下,tzdriver加载失败,请收集相关dmesg日志,联系华为技术支持处理。
    • tzdriver正常加载,请参考4进一步排查。
  4. 确认teecd各项依赖已正确部署。
    1
    ll /usr/bin | grep -E "teecd|tlogcat"
    

    预期结果:

    1
    ldconfig -p | grep -E "teec|boundscheck"
    

    预期结果:

    • 如果teecd、各项依赖未正确部署,请参考加载REE侧模块重新部署teecd及动态库。
    • 已正确部署,绝对路径加载teecd。
      1
      /usr/bin/teecd &
      

      检查teecd进程是否存在。

      • 是,处理完毕。
      • 否,搜集journalctl有关teecd的系统日志,联系华为技术支持处理。
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词