MCA Recovery

本文介绍了MCARecovery机制在不同路径下如何协助系统从硬件不可纠正错误中恢复,包括执行路径与非执行路径的区别及处理方式,并深入探讨了MCA 2.0 Recovery在EMCAGen2架构下的增强特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述
1、MCA Recovery – Execution Path
软件层辅助从不可纠正的数据错误恢复;
1)处理器识别到硬件不可纠正错误,打上数据腐烂标签,事件交由固件或OS处理。
2)如果固件/OS有冗余数据备份,可以被纠正;
3)如果如果错误发生在用户空间,OS可以用SIGBUS事件通知APP,允许进一步恢复或者中断APP,保持OS运行
4)如果错误发生在内核空间,OS触发kernal panic
2、MCA Recovery – Non-execution Path
软件层辅助从不可纠正的数据错误恢复;
1)处理器识别到硬件不可纠正错误,比如巡检错误事件、LLC显式回写事务,打上数据腐烂标签,事件交由固件或OS处理。
2)OS离线受影响的PAGE并禁止应用进一步访问;允许系统恢复继续运行;
3)如果错误发生在内核空间,OS可能不能离线PAGE,将记录错误并继续运行
3、MCA 2.0 Recovery (as per EMCA Gen2 architecture)
增强型错误上报,固件优先模型,支持如下属性:
Enhanced error reporting to support Firmware First Model (FFM) with following attributes:
1. Allows the SMM code to intercept the MCE/CMCI.
2. Allows the SMM code to write the MCA Status/Add/Misc registers.
3. Allows the SMM code to generate MCEs.
4. Allows the DSM based pointer for enhanced error logs.
5. Additional IA32_MCG_CAP bit for eMCA support
底层逻辑
MSR 0x179 - IA32_MCG_CAP[24] = 1--MSR 0x178 - MSR_MCG_CONTAIN打开--MCi_Status指示进一步区分UE为UCNA/SRAR/SRAO/UC Fatal/UC Cat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值