MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / _map_page_in_varea

Function _map_page_in_varea

components/mm/mm_anon.c:237–251  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

235 */
236
237rt_inline void _map_page_in_varea(rt_aspace_t asapce, rt_varea_t varea,
238 struct rt_aspace_fault_msg *msg, char *fault_addr)
239{
240 char *page_va = msg->response.vaddr;
241 if (rt_varea_map_page(varea, fault_addr, page_va) == RT_EOK)
242 {
243 msg->response.status = MM_FAULT_STATUS_OK_MAPPED;
244 rt_varea_pgmgr_insert(varea, page_va);
245 }
246 else
247 {
248 msg->response.status = MM_FAULT_STATUS_UNRECOVERABLE;
249 LOG_W("%s: failed to map page into varea", __func__);
250 }
251}
252
253/* page frame inquiry or allocation in backup address space */
254static void *_get_page_from_backup(rt_aspace_t backup, rt_base_t offset_in_mobj)

Callers 2

_get_page_from_backupFunction · 0.85
_fetch_page_for_vareaFunction · 0.85

Calls 2

rt_varea_map_pageFunction · 0.85
rt_varea_pgmgr_insertFunction · 0.85

Tested by

no test coverage detected