Changeset View
Changeset View
Standalone View
Standalone View
sys/arm/arm/pmap-v6.c
Show First 20 Lines • Show All 6,231 Lines • ▼ Show 20 Lines | pmap_mincore(pmap_t pmap, vm_offset_t addr, vm_paddr_t *pap) | ||||
int val; | int val; | ||||
PMAP_LOCK(pmap); | PMAP_LOCK(pmap); | ||||
pte1p = pmap_pte1(pmap, addr); | pte1p = pmap_pte1(pmap, addr); | ||||
pte1 = pte1_load(pte1p); | pte1 = pte1_load(pte1p); | ||||
if (pte1_is_section(pte1)) { | if (pte1_is_section(pte1)) { | ||||
pa = trunc_page(pte1_pa(pte1) | (addr & PTE1_OFFSET)); | pa = trunc_page(pte1_pa(pte1) | (addr & PTE1_OFFSET)); | ||||
managed = pte1_is_managed(pte1); | managed = pte1_is_managed(pte1); | ||||
val = MINCORE_SUPER | MINCORE_INCORE; | val = MINCORE_PSIND(1) | MINCORE_INCORE; | ||||
if (pte1_is_dirty(pte1)) | if (pte1_is_dirty(pte1)) | ||||
val |= MINCORE_MODIFIED | MINCORE_MODIFIED_OTHER; | val |= MINCORE_MODIFIED | MINCORE_MODIFIED_OTHER; | ||||
if (pte1 & PTE1_A) | if (pte1 & PTE1_A) | ||||
val |= MINCORE_REFERENCED | MINCORE_REFERENCED_OTHER; | val |= MINCORE_REFERENCED | MINCORE_REFERENCED_OTHER; | ||||
} else if (pte1_is_link(pte1)) { | } else if (pte1_is_link(pte1)) { | ||||
pte2p = pmap_pte2(pmap, addr); | pte2p = pmap_pte2(pmap, addr); | ||||
pte2 = pte2_load(pte2p); | pte2 = pte2_load(pte2p); | ||||
pmap_pte2_release(pte2p); | pmap_pte2_release(pte2p); | ||||
▲ Show 20 Lines • Show All 711 Lines • Show Last 20 Lines |