yjshen
(长江计算_申永军)
1
// 此模板仅供参考,如果不适用可以修改
问题描述
os测通过ras工具给内存注错,产生内存UCE告警,此时OS下电关机,会触发三条UCE触发解除日志,不符合预期,如下图所示
环境信息
-
操作系统:[如 Ubuntu 24.04]
-
软件版本:OpenUBMC2512
-
硬件配置:[如 CPU、内存等]
重现步骤
-
os测通过ras工具给内存注错,产生内存UCE告警
-
OS下电关机
期望结果
内存uce告警解除,且不产生多条日志
实际结果
内存uce告警解除,产生了多条内存uce日志
app.log.zip (118.9 KB)
尝试过的解决方案
[列出您已经尝试过的解决方案及结果]
分析结论
[详细总结您对此问题的分析结论]
BeanLin
(Bean Lin)
2
内存UCE故障是根据操作系统内核消费内存故障数据来触发的,因为没有提供注错的细节和fdm日志,根据SEL的描述应是你选择的注错地址多次被OS内核消费,队列处理会把所有故障通过SEL上报完,下电后也会把所有内存告警消除,属于正常业务处理流程;只想触发单次故障,建议可以选择系统高地址进行注错,避免这种情况;
yjshen
(长江计算_申永军)
3
您的意思是在上电情况下,注错地址多次被os内核消费,导致队列中有多次内存uce告警,但是因为当前已经是uce告警触发状态,所以不会重复触发。然后下电时,当前触发的uce告警被解除,此时队列存放的剩余内存uce告警被触发,然后解除,所以有多条告警触发合解除日志?
BeanLin
(Bean Lin)
6
多次触发内存故障后,内核实际在多次消费内存故障,会一直触发故障上报
yjshen
(长江计算_申永军)
7
fdm_log.zip (6.0 KB)。fdm日志
BeanLin
(Bean Lin)
8
通过你提供的日志,你可以通过检索Socket关键字看到,没一个SEA-L2C就是一次CPU核消费故障信息,每次消费都会被告警缓存
行 4067: Socket: CPU1 DIE: TotemB Module: DDRC0
行 4104: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4124: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4144: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4164: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4184: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4204: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4224: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4244: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4264: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
行 4284: Socket: CPU1 DIE: TotemB Module: CPU CORE4 Sub Module: SEA-L2C
....