create_hyp_exec_mappings(9)
β¨ create_hyp_exec_mappings(9) β¨
okay so this is a page straight out of the Kernel API Manual, section 9, and it's literally about mapping an executable range into HYP π like yes we're doing hypervisor things today bestie
π NAME π
create_hyp_exec_mappings β map an executable range into HYP, no cap π«Ά
πΈ SYNOPSIS πΈ
int create_hyp_exec_mappings (phys_addr_t phys_addr , size_t size , void
**haddr );
it's giving "three arguments, one return value, all business" β¨
π¦ ARGUMENTS π¦
phys_addrβ the physical start address that gets mapped π this is where the region actually livessizeβ size of the region being mapped, like how much of it we're doinghaddrβ HYP VA for this mapping β (the virtual address on the HYP side, and it comes back through the pointer)
π SEE ALSO π
the whole friend group fr fr, go check them out:
- Kernel file
./arch/arm64/kvm/mmu.c kvm_arch_flush_remote_tlbs(9)__unmap_stage2_range(9)stage2_flush_vm(9)free_hyp_pgds(9)create_hyp_mappings(9)hyp_alloc_private_va_range(9)create_hyp_io_mappings(9)kvm_init_stage2_mmu(9)stage2_unmap_vm(9)kvm_phys_addr_ioremap(9)kvm_stage2_wp_range(9)kvm_mmu_wp_memory_region(9)kvm_mmu_split_memory_region(9)kvm_handle_guest_abort(9)
and that's the whole page bestie, short and iconic π
source:./arch/arm64/kvmΒ· dated October 2026 Β· filed undercreate_hyp_exec_mappings(9)β mwah, take care, go map something π§ββοΈπ₯
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms