When a region is explicitly unmapped (like with
mmu_change_region_attr(.... PTE_TYPE_FAULT)) the address translation
still remains but won't be used since the region is marked invalid.
Print these regions when we dump the pagetable to help with debugging.
Signed-off-by: Casey Connolly <casey.connolly@linaro.org>
if (exit)
return;
- if (pte_type(&pte) == PTE_TYPE_FAULT)
+ if (!pte)
continue;
attrs = pte & ALL_ATTRS;
/* Go down a level */
__pagetable_walk(_addr, tcr, level + 1, cb, priv);
state[level] = WALKER_STATE_START;
- } else if (pte_type(&pte) == PTE_TYPE_BLOCK || pte_type(&pte) == PTE_TYPE_PAGE) {
+ } else {
/* We foud a block or page, start walking */
entry_start = pte;
state[level] = WALKER_STATE_REGION;