Changeset View
Changeset View
Standalone View
Standalone View
sys/vm/vm_map.c
Show First 20 Lines • Show All 2,391 Lines • ▼ Show 20 Lines | for (; | ||||
*/ | */ | ||||
if (((flags & MAP_PREFAULT_MADVISE) != 0 && | if (((flags & MAP_PREFAULT_MADVISE) != 0 && | ||||
vm_page_count_severe()) || | vm_page_count_severe()) || | ||||
((flags & MAP_PREFAULT_PARTIAL) != 0 && | ((flags & MAP_PREFAULT_PARTIAL) != 0 && | ||||
tmpidx >= threshold)) { | tmpidx >= threshold)) { | ||||
psize = tmpidx; | psize = tmpidx; | ||||
break; | break; | ||||
} | } | ||||
if (p->valid == VM_PAGE_BITS_ALL) { | if (vm_page_all_valid(p)) { | ||||
if (p_start == NULL) { | if (p_start == NULL) { | ||||
start = addr + ptoa(tmpidx); | start = addr + ptoa(tmpidx); | ||||
p_start = p; | p_start = p; | ||||
} | } | ||||
/* Jump ahead if a superpage mapping is possible. */ | /* Jump ahead if a superpage mapping is possible. */ | ||||
if (p->psind > 0 && ((addr + ptoa(tmpidx)) & | if (p->psind > 0 && ((addr + ptoa(tmpidx)) & | ||||
(pagesizes[p->psind] - 1)) == 0) { | (pagesizes[p->psind] - 1)) == 0) { | ||||
mask = atop(pagesizes[p->psind]) - 1; | mask = atop(pagesizes[p->psind]) - 1; | ||||
▲ Show 20 Lines • Show All 2,518 Lines • Show Last 20 Lines |