今日头条
器件负载快速解析完成,并允许后续指令执行时复用 GID。
条件
1. 旧器件负载执行后收到来自互连的外部错误响应,但尚未全部执行完成,这将导致异步外部异常中止。
2. 再执行不少于 80 条指令使 GID 回绕,从而导致为新负载分配的 GID 与旧器件负载相同。
3. 新负载所含物理地址子集 PA[11:6] 与旧器件负载相同。
解决方案
影响:
满足上述条件时,新负载可能错误关联旧器件负载的外部错误,并生成同步外部异常中止,即使新负载无需报告任何异常中止也是如此。
变通方法:
无需变通方法。只要同步异常中止异常处理程序重新执行新负载,即可解决此状况,且负载将不会检测到精确的外部异常中止。
此外还将生成异步外部异常中止(除非在旧器件负载完成时将其屏蔽)。
如果虚拟机管理器公开的器件可向其访客触发外部异常中止,则该虚拟机管理器中可能包含异步外部异常中止以及 DSB-SY、未掩码的 PSTATE.A 和 ISB 序列。在向访客取消此处 SError 的掩码后,就会立即生成虚拟机管理器属性 SError。
此序列足以使错误条件完成,后续负载将不会受到此序列之前发生的器件负载的影响。
受影响的配置:
具有 Arm Cortex-A72 (APU) 的所有 Versal 器件。
解决办法:
请参阅此第三方勘误表 (Arm, Inc. 1537003)。不对该问题进行修复。
审核编辑 黄昊宇
全部0条评论
快来发表一下你的评论吧 !