Lines Matching refs:entry

235 static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry);
255 lpae_t *entry; in p2m_next_level() local
259 entry = *table + offset; in p2m_next_level()
261 if ( !lpae_valid(*entry) ) in p2m_next_level()
266 ret = p2m_create_table(p2m, entry); in p2m_next_level()
272 if ( lpae_mapping(*entry) ) in p2m_next_level()
275 mfn = _mfn(entry->p2m.base); in p2m_next_level()
299 lpae_t entry, *table; in p2m_get_entry() local
350 entry = table[offsets[level]]; in p2m_get_entry()
352 if ( lpae_valid(entry) ) in p2m_get_entry()
354 *t = entry.p2m.type; in p2m_get_entry()
359 mfn = _mfn(entry.p2m.base); in p2m_get_entry()
550 static int p2m_create_table(struct p2m_domain *p2m, lpae_t *entry) in p2m_create_table() argument
556 ASSERT(!lpae_valid(*entry)); in p2m_create_table()
579 p2m_write_pte(entry, pte, p2m->clean_pte); in p2m_create_table()
640 lpae_t entry, unsigned int level) in p2m_free_entry() argument
648 if ( !lpae_valid(entry) ) in p2m_free_entry()
652 if ( lpae_is_superpage(entry, level) ) in p2m_free_entry()
661 p2m_put_l3_page(entry); in p2m_free_entry()
665 table = map_domain_page(_mfn(entry.p2m.base)); in p2m_free_entry()
680 mfn = _mfn(entry.p2m.base); in p2m_free_entry()
689 static bool p2m_split_superpage(struct p2m_domain *p2m, lpae_t *entry, in p2m_split_superpage() argument
699 mfn_t mfn = _mfn(entry->p2m.base); in p2m_split_superpage()
708 ASSERT(lpae_is_superpage(*entry, level)); in p2m_split_superpage()
729 pte = *entry; in p2m_split_superpage()
768 p2m_write_pte(entry, pte, p2m->clean_pte); in p2m_split_superpage()
787 lpae_t *entry, *table, orig_pte; in __p2m_set_entry() local
834 entry = table + offsets[level]; in __p2m_set_entry()
843 lpae_t split_pte = *entry; in __p2m_set_entry()
845 ASSERT(lpae_is_superpage(*entry, level)); in __p2m_set_entry()
866 p2m_remove_pte(entry, p2m->clean_pte); in __p2m_set_entry()
869 p2m_write_pte(entry, split_pte, p2m->clean_pte); in __p2m_set_entry()
884 entry = table + offsets[level]; in __p2m_set_entry()
893 orig_pte = *entry; in __p2m_set_entry()
920 p2m_remove_pte(entry, p2m->clean_pte); in __p2m_set_entry()
950 p2m_write_pte(entry, pte, p2m->clean_pte); in __p2m_set_entry()
961 if ( lpae_valid(orig_pte) && entry->p2m.base != orig_pte.p2m.base ) in __p2m_set_entry()
965 (lpae_valid(orig_pte) || lpae_valid(*entry)) ) in __p2m_set_entry()