Reverse map
include/mem/rmap.h View source View on GitHubThe way that rmap goes is:
page -> folio -> mapping object (file_vma, anon_vma) -> traverse interval tree -> for each matching avc -> vma_range -> addr
Type Aliases
Section titled “Type Aliases”rmap_visit_fn
Section titled “rmap_visit_fn”typedef void (*rmap_visit_fn)(
struct mm * mm,
vaddr_t va,
struct folio * f,
void * private
) source visitor invoked for each confirmed (mm, va) mapping the folio
Functions
Section titled “Functions”rmap_walk_anon
Section titled “rmap_walk_anon”void rmap_walk_anon(
struct folio *f,
rmap_visit_fn visit,
void *private
) source folio_add_anon_rmap
Section titled “folio_add_anon_rmap”fault path: first PTE to map this folio
folio_add_anon_rmap_shared
Section titled “folio_add_anon_rmap_shared”additional mapper