Lines Matching refs:ppn
38 FreePageTable(page_num_t ppn, bool isKernel, uint32 level = 2) in FreePageTable() argument
41 Pte* pte = (Pte*)VirtFromPhys(ppn * B_PAGE_SIZE); in FreePageTable()
50 FreePageTable(pte[i].ppn, isKernel, level - 1); in FreePageTable()
53 vm_page* page = vm_lookup_page(ppn); in FreePageTable()
60 GetPageTableSize(page_num_t ppn, bool isKernel, uint32 level = 2) in GetPageTableSize() argument
62 if (ppn == 0) in GetPageTableSize()
69 Pte* pte = (Pte*)VirtFromPhys(ppn * B_PAGE_SIZE); in GetPageTableSize()
78 size += GetPageTableSize(pte[i].ppn, isKernel, level - 1); in GetPageTableSize()
111 pte->ppn = kernelPageTable[i].ppn; in LookupPte()
124 page_num_t ppn = page->physical_page_number; in LookupPte() local
125 if (ppn == 0) in LookupPte()
132 .ppn = ppn in LookupPte()
136 pte = (std::atomic<Pte>*)VirtFromPhys(B_PAGE_SIZE * pte->load().ppn); in LookupPte()
154 return pteVal.ppn * B_PAGE_SIZE; in LookupAddr()
255 .ppn = physicalAddress / B_PAGE_SIZE in Map()
359 PageUnmapped(area, oldPte.ppn, oldPte.isAccessed, oldPte.isDirty, updatePageQueue); in UnmapPage()
397 vm_page* page = vm_lookup_page(oldPte.ppn); in UnmapPages()
577 *_physicalAddress = pteVal.ppn * B_PAGE_SIZE; in Query()
775 UnaccessedPageUnmapped(area, oldPte.ppn); in ClearAccessedAndModified()