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:Gleb Natapov <gleb@cloudius-systems.com> Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
Loading
Please register or sign in to comment