Synchronous external abort on translation table walk

南笙酒味 提交于 2020-01-06 13:08:05

问题


Can someone explain what would be the reason of this abort. I could not find an explanation in the manual.

Basically I am getting this error in the IFSC code - Synchronous external abort on translation table walk.

The IFSC are bits in the HSR register which is used with an ARMv7A using the virtualization extensions.


回答1:


The IFSC is basically a virtualization version of the IFSR.

IFSC code - Synchronous external abort on translation table walk.

This means that the CPU had difficulty accessing the page tables. So your code may have jumped to some unmapped address. The first level MMU entry may contain an invalid entry or it contains a 2nd level page table address that gives a bus error when accessed. Basically, it means that something in the page tables did not map well when your faulting instruction executed. You need to inspect the faulting code and then manually walk your page tables to find the actual source of the errors.

If you recently change the table base, some code may execute from the TLB cache and then on the first actual walk, a fault like this will occur.

You probably need to give more information on the context of where the IFSC is read for more help.



来源:https://stackoverflow.com/questions/22627558/synchronous-external-abort-on-translation-table-walk

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!