PTP_LEVELS
struct uvm_object pm_obj[PTP_LEVELS-1];/* objects for lvl >= 1) */
struct vm_page *pm_ptphint[PTP_LEVELS-1];
extern long nkptp[PTP_LEVELS];
for (i = 0; i < PTP_LEVELS - 1; i++) {
for (i = PTP_LEVELS - 1; i >= 1; i--) {
if (level == PTP_LEVELS - 1) {
if (svs_enabled && level == PTP_LEVELS - 1 &&
if (level < PTP_LEVELS - 1) {
} while (++level < PTP_LEVELS);
for (i = PTP_LEVELS; i > 1; i--) {
for (i = PTP_LEVELS; i > 1; i--) {
if (i == PTP_LEVELS) {
if (svs_enabled && i == PTP_LEVELS &&
if (i < PTP_LEVELS) {
for (i = PTP_LEVELS; i > 1; i--) {
pdir[PDIR_SLOT_KERN + nkptp[PTP_LEVELS - 1] - 1] =
npde = nkptp[PTP_LEVELS - 1];
int idx = pl_i(KERNBASE, PTP_LEVELS);
p = pmap->pm_pdir[PDIR_SLOT_KERN + nkptp[PTP_LEVELS - 1] - 1];
for (i = 0; i < PTP_LEVELS - 1; i++) {
for (i = 0; i < PTP_LEVELS - 1; i++) {
for (i = 0; i < PTP_LEVELS - 1; i++) {
for (i = PTP_LEVELS; i > 1; i--) {
struct vm_page *pg[PTP_LEVELS + 1];
bool alloced[PTP_LEVELS + 1];
pmap_valid_entry(pmap->pm_pdir[pl_i(va, PTP_LEVELS)]),
for (level = PTP_LEVELS; level > 1; level--) {
if (level == PTP_LEVELS)
if (level == PTP_LEVELS && i >= PDIR_SLOT_KERN) {
KASSERT(level != PTP_LEVELS || nkptp[level - 1] +
long needed_kptp[PTP_LEVELS], target_nptp;
old = nkptp[PTP_LEVELS - 1];
for (i = PTP_LEVELS - 1; i >= 1; i--) {
if (needed_kptp[PTP_LEVELS - 1] != 0) {
pdkidx < PDIR_SLOT_KERN + nkptp[PTP_LEVELS - 1];
newpdes = nkptp[PTP_LEVELS - 1] - old;
#if PTP_LEVELS > 4
for (level = 0; level < PTP_LEVELS; ++level) {
for (level = 0; level < PTP_LEVELS - 1; ++level) {
tmp_pml = (void *)x86_tmp_pml_vaddr[PTP_LEVELS - 1];
tmp_pml[508] = x86_tmp_pml_paddr[PTP_LEVELS - 1] | PTE_P;
for (level = PTP_LEVELS - 1; level > 0; --level) {
return x86_tmp_pml_paddr[PTP_LEVELS - 1] + 508 * sizeof(pd_entry_t);
return x86_tmp_pml_paddr[PTP_LEVELS - 1];
for (i = PTP_LEVELS; i > 1; i--) {
if (level < PTP_LEVELS - 1) {
} while (++level < PTP_LEVELS);
for (i = PTP_LEVELS; i > 1; i--) {
if (i < PTP_LEVELS) {
for (i = PTP_LEVELS; i > 1; i--) {
KASSERT(ci->ci_normal_pdes[PTP_LEVELS - 2] == L4_BASE);
ci->ci_normal_pdes[PTP_LEVELS - 2] = pmap->pm_pdir;
KASSERT(ci->ci_normal_pdes[PTP_LEVELS - 2] != L4_BASE);
ci->ci_normal_pdes[PTP_LEVELS - 2] = L4_BASE;
for (i = PTP_LEVELS; i > 1; i--) {
for (i = 0;i < PTP_LEVELS - 1;i++) {
nkptp[PTP_LEVELS - 1] * sizeof(pd_entry_t));
#define PDIRSZ PTP_LEVELS