翻译表走的同步外部中止

时间:2014-03-25 07:03:53

标签: linux linux-kernel arm

有人可以解释这次中止的原因。 我在手册中找不到解释。

基本上我在IFSC代码中收到此错误 - 转换表行走时同步外部中止。

IFSCHSR寄存器中的位,与使用虚拟化扩展的ARMv7A一起使用。

1 个答案:

答案 0 :(得分:0)

IFSC基本上是IFSR的虚拟化版本。

  

IFSC代码 - 转换表行走时的同步外部中止。

这意味着CPU难以访问页表。所以你的代码可能已经跳转到一些未映射的地址。第一级MMU条目可能包含无效条目,或者包含2 nd 级别页表地址,在访问时会出现总线错误。基本上,这意味着当您的错误指令执行时,页表中的某些内容不能很好地映射。您需要检查错误代码,然后手动遍历页表以查找错误的实际来源。

如果您最近更改表格基础,某些代码可能会从 TLB 缓存执行,然后在第一次实际行走时,会发生类似这样的错误。

您可能需要提供有关IFSC读取位置的更多信息,以获取更多帮助。