【问题标题】:Synchronous external abort on translation table walk翻译表遍历上的同步外部中止
【发布时间】:2014-03-25 07:03:52
【问题描述】:

谁能解释这次中止的原因。 我在手册中找不到解释。

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

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

【问题讨论】:

标签: linux linux-kernel arm


【解决方案1】:

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

IFSC 代码 - 转换表遍历时同步外部中止。

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

如果您最近更改了表基,一些代码可能会从TLB 缓存中执行,然后在第一次实际遍历时,就会发生这样的错误。 p>

您可能需要提供有关阅读 IFSC 的上下文的更多信息以获得更多帮助。

【讨论】:

  • 所以我没有刷新来宾 stage2 页表的缓存行。这就是原因。固定
猜你喜欢
  • 2015-02-14
  • 1970-01-01
  • 1970-01-01
  • 2020-03-23
  • 2013-01-29
  • 2019-11-28
  • 2015-02-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多