Skip to content
Snippets Groups Projects
Commit 192c9970 authored by Gleb Natapov's avatar Gleb Natapov Committed by Avi Kivity
Browse files

mmu: generic page table walker based on linear_map_level


This patch implements generic page table walker that traverse page table
levels in compile time. It accepts page_mapper class, that controls
various aspects of page traversing, as a parameter.  page_table_operation
controls whether non present intermediate page should be allocated,
how to handle leaf small/huge pages, whether to split huge pages, how to
handle sub area of a huge page in case splitting is disabled and whether
walker should loop over multiple page entries.

linear_map_level() is modified to use new page walker.

Signed-off-by: default avatarGleb Natapov <gleb@cloudius-systems.com>
Signed-off-by: default avatarAvi Kivity <avi@cloudius-systems.com>
parent fdeacd77
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment