MCPcopy Create free account

hub / github.com/KuangjuX/hypocaust / functions

Functions178 in github.com/KuangjuX/hypocaust

↓ 1 callersFunctionset_user_trap_entry
()
src/hypervisor/trap/mod.rs:58
↓ 1 callersMethodsynchronize_page_table
(&mut self, va: usize, pte: PageTableEntry)
src/guest/pmap.rs:432
↓ 1 callersMethodtranslate
(&self, vpn: VirtPageNum)
src/page_table/sv39.rs:124
↓ 1 callersMethodtranslate_guest
(&self, vpn: VirtPageNum, hart_id: usize)
src/page_table/sv39.rs:129
↓ 1 callersFunctiontrap_return
set the new addr of __restore asm function in TRAMPOLINE page, set the reg a0 = trap_cx_ptr, reg a1 = phy addr of usr page table, finally, jump to new
src/hypervisor/trap/mod.rs:125
↓ 1 callersMethodunmap
(&mut self, page_table: &mut P)
src/mm/memory_set.rs:413
↓ 1 callersMethodunmap_one
(&mut self, page_table: &mut P, vpn: VirtPageNum)
src/mm/memory_set.rs:382
↓ 1 callersFunctionvm_init
(guest_kernel_memory: &MemorySet<PageTableSv39>)
src/mm/mod.rs:11
Methodaccessed
(&self)
src/page_table/pte.rs:65
Methodaligned
(&self)
src/page_table/address.rs:111
Methodapp_init_context
init app context
src/hypervisor/trap/context.rs:29
Methodbase
(&self)
src/device_emu/mod.rs:45
Methodbase
(&self)
src/mm/memory_region.rs:21
Methodclaim_and_clear
(&mut self)
src/device_emu/plic.rs:12
Functioncollect_page_table_vpns
收集所有页表的虚拟页号
src/guest/pmap.rs:134
Methodcreate_guest
()
src/hypervisor/mod.rs:34
Methodcreate_user_guest_kernel
创建用户态的 Guest Kernel 内存空间
src/mm/memory_set.rs:180
Methoddirty
(&self)
src/page_table/pte.rs:61
Functiondisable_timer_interrupt
()
src/hypervisor/trap/mod.rs:69
Methoddrop
(&mut self)
src/hypervisor/hyp_alloc/frame_allocator.rs:35
Methodempty
()
src/page_table/pte.rs:31
Methodfmt
(&self, f: &mut Formatter<'_>)
src/page_table/address.rs:32
Methodfmt
(&self, f: &mut Formatter<'_>)
src/hypervisor/hyp_alloc/frame_allocator.rs:29
Functionframe_allocator_test
a simple test for frame allocator
src/hypervisor/hyp_alloc/frame_allocator.rs:122
Methodfrom
(v: usize)
src/page_table/address.rs:57
Methodfrom_ppn
(ppn: PhysPageNum)
src/page_table/sv39.rs:39
Methodfrom_token
Temporarily used to get arguments from user space.
src/page_table/sv39.rs:32
Functionget_time_ms
get current time in microseconds
src/timer.rs:19
Methodgoto_trap_return
set Task Context{__restore ASM funciton: trap_return, sp: kstack_ptr, s: s_0..12}
src/guest/context.rs:126
Functionhandle_alloc_error
panic when heap allocation error occurs
src/hypervisor/hyp_alloc/heap_allocator.rs:12
Functionheap_test
()
src/hypervisor/hyp_alloc/heap_allocator.rs:29
Functionhentry
(hart_id: usize, device_tree_blob: usize)
src/main.rs:92
Functionhpa2gpa
(pa: usize, hart_id: usize)
src/guest/pmap.rs:89
Methodin_region
(&self, addr: usize)
src/mm/memory_region.rs:25
Methodindex
(&self, index: usize)
src/mm/memory_region.rs:32
Methodindex_mut
(&mut self, index: usize)
src/mm/memory_region.rs:43
Functioninitialize_shadow_page_table
用于初始化影子页表同步所有页表项(仅在最开始时使用)
src/guest/pmap.rs:214
Methodinto_iter
(self)
src/page_table/address.rs:225
Functionis_device_access
(guest_pa: usize)
src/hypervisor/trap/device.rs:54
Methodis_global
(&self)
src/page_table/pte.rs:57
Methodis_user
(&self)
src/page_table/pte.rs:53
Methodnew
(memory_set: MemorySet<P>, guest_id: usize)
src/guest/mod.rs:39
Methodnew
()
src/guest/pmap.rs:43
Methodnew
()
src/guest/context.rs:31
Methodnew
(guest_id: usize)
src/device_emu/mod.rs:16
Methodnew
(host_base_address: usize)
src/device_emu/virtio.rs:38
Methodnew
(guest_id: usize)
src/device_emu/uart.rs:19
Methodnew
(ppn: PhysPageNum, flags: PTEFlags)
src/page_table/pte.rs:26
Methodnew
()
src/page_table/sv39.rs:24
Methodnew
(start: T, end: T)
src/page_table/address.rs:208
Methodnew
(ppn: PhysPageNum)
src/hypervisor/hyp_alloc/frame_allocator.rs:18
Methodnew
( start_va: VirtAddr, end_va: VirtAddr, start_pa: Option<PhysAddr>, end_pa: Op
src/mm/memory_set.rs:334
Methodnew
(addr: usize, length: usize)
src/mm/memory_region.rs:12
Methodnew
User is responsible to guarantee that inner struct is only used in uniprocessor.
src/sync/up.rs:22
Methodnew_bare
()
src/mm/memory_set.rs:42
Methodnew_guest_kernel
(guest_kernel_data: &[u8])
src/mm/memory_set.rs:222
Methodnew_kernel
Without kernel stacks. 内核虚拟地址映射 映射了内核代码段和数据段以及跳板页,没有映射内核栈
src/mm/memory_set.rs:88
Methodpage_table
(&self)
src/mm/memory_set.rs:52
Methodpaged
是否开启分页
src/guest/context.rs:95
Functionpanic
panic handler
src/lang_items.rs:8
Methodparse
(dtb: usize)
src/hypervisor/fdt.rs:21
Functionprint
(args: fmt::Arguments)
src/console.rs:17
Methodprint_guest_page_table
(&self)
src/debug/pagedebug.rs:18
Methodprint_page_table
(&self)
src/debug/pagedebug.rs:12
Methodprint_trap_context
(&self)
src/debug/pagedebug.rs:24
Functionset_next_trigger
(stimer: usize)
src/timer.rs:23
Functionstart
hypocaust entrypoint
src/main.rs:63
Functionsynchronize_page_table
(hart_id: usize, satp: usize)
src/guest/pmap.rs:172
Methodtoken
(&self)
src/page_table/sv39.rs:133
Functiontranslate_guest_address
将 guest vaddr 翻译为 host paddr,并返回 `AddressTranslation`
src/page_table/mod.rs:89
Methodtranslate_valid_guest_vaddr
(&self, vaddr: usize)
src/guest/pmap.rs:322
Functiontranslated_byte_buffer
translate a pointer to a mutable u8 Vec through page table
src/page_table/sv39.rs:170
Functiontrap_from_kernel
(_trap_cx: &TrapContext)
src/hypervisor/trap/mod.rs:150
Functiontrap_handler
handle an interrupt, exception, or system call from user space
src/hypervisor/trap/mod.rs:76
Methodunmap
(&mut self, vpn: VirtPageNum)
src/page_table/sv39.rs:118
Methodwalk_page_table
(root: usize, va: usize, read_pte: R)
src/page_table/sv39.rs:137
Methodwrite_str
(&mut self, s: &str)
src/console.rs:9
Methodzero_init
init task context
src/guest/context.rs:118
← previous101–178 of 178, ranked by callers