Lines Matching full:page
289 * will be established. If the page tables already had mappings installed
292 * If the target architecture supports multiple page sizes, currently
293 * only the smallest page size will be used.
301 * Architectures are expected to pre-allocate page tables for the entire
311 * @param virt Page-aligned Destination virtual address to map
312 * @param phys Page-aligned Source physical address to map
313 * @param size Page-aligned size of the mapped memory region in bytes
322 * When this completes, the relevant page table entries will be updated as
325 * page tables.
334 * and it is not necessary to free any paging structures. Empty page tables
341 * @param addr Page-aligned base virtual address to un-map
342 * @param size Page-aligned region size
349 * The function only needs to query the current set of page tables as
351 * page tables are in use. If multiple page tables are active it is unnecessary
355 * across all page tables. Calling this function on data pages that are
356 * exceptions to this rule (such as the scratch page) is undefined behavior.
357 * Just check the currently installed page tables and return the information
360 * @param virt Page-aligned virtual address
370 * Update page frame database with reserved pages
372 * Some page frames within system RAM may not be available for use. A good
382 * Update all page tables for a paged-out data page
385 * - Sets the data page virtual address to trigger a fault if accessed that
388 * data page in the page fault handler.
390 * always be page-aligned. It could be 0.
392 * If multiple page tables are in use, this must update all page tables.
403 * Update all page tables for a paged-in data page
406 * - Maps the specified virtual data page address to the provided physical
407 * page frame address, such that future memory accesses will function as
411 * If multiple page tables are in use, this must update all page tables.
422 * Update current page tables for a temporary mapping
424 * Map a physical page frame address to a special virtual address
426 * when this function returns, the calling context can read/write the page
429 * This mapping only needs to be done on the current set of page tables,
438 * Status of a particular page location.
441 /** The page has been evicted to the backing store. */
444 /** The page is resident in memory. */
447 /** The page is not mapped. */
452 * Fetch location information about a page at a particular address
454 * The function only needs to query the current set of page tables as
456 * page tables are in use. If multiple page tables are active it is unnecessary
458 * (such as reverse page table mapping on x86).
464 * across all page tables. Calling this function on data pages that are
465 * exceptions to this rule (such as the scratch page) is undefined behavior.
466 * Just check the currently installed page tables and return the information
469 * @param addr Virtual data page address that took the page fault
471 * store location value used to retrieve the data page. In the case of
472 * ARCH_PAGE_LOCATION_PAGED_IN, the physical address the page is mapped to.
473 * @retval ARCH_PAGE_LOCATION_PAGED_OUT The page was evicted to the backing store.
474 * @retval ARCH_PAGE_LOCATION_PAGED_IN The data page is resident in memory.
475 * @retval ARCH_PAGE_LOCATION_BAD The page is un-mapped or otherwise has had
483 * Bit indicating the data page was accessed since the value was last cleared.
493 * Bit indicating the data page, if evicted, will need to be paged out.
495 * Set if the data page was modified since it was last paged out, or if
504 * Bit indicating that the data page is loaded into a physical page frame.
506 * If un-set, the data page is paged out or not mapped.
512 * If ARCH_DATA_PAGE_LOADED is un-set, this will indicate that the page
517 * Retrieve page characteristics from the page table(s)
526 * and dirty states for the relevant entries in all active page tables in
527 * the system if the page is mapped and not paged out.
530 * This function will report its prior state. If multiple page tables are in
549 * across all page tables. Calling this function on data pages that are
550 * exceptions to this rule (such as the scratch page) is undefined behavior.
554 * @param addr Virtual address to look up in page tables
555 * @param [out] location If non-NULL, updated with either physical page frame
560 * @retval Value with ARCH_DATA_PAGE_* bits set reflecting the data page