STRUCT ACRN_VM_MEMMAP(9)
π struct acrn_vm_memmap(9) β like, the whole Kernel API Manual page, bestie β¨
okay so picture this: we're deep in the Kernel API Manual, and the star of the show is struct acrn_vm_memmap (section 9, obviously π). It's giving EPT memory mapping info for a User VM, and honestly? It ate. Let's get into it π
πΈ NAME πΈ
struct acrn_vm_memmap β literally just "A EPT memory mapping info for a User VM." no cap, that's the whole vibe π¦
β¨ SYNOPSIS β¨
here's the shape of it, copy it exactly bestie, don't freestyle:
struct acrn_vm_memmap {
__u32 type;
__u32 attr;
__u64 user_vm_pa;
union {
__u64 service_vm_pa;
__u64 vma_base;
};
__u64 len;
};
π«Ά Members π«Ά
okay so every single member, and yes they all get the same energy (iykyk):
typeβ the Type of the memory mapping (ACRM_MEMMAP_*). You Pass to hypervisor directly, bestie. no middleman πattrβ the Attribute of the memory mapping. Also Pass to hypervisor directly. periodt β¨user_vm_paβ Physical address of User VM. Pass to hypervisor directly, always π¦{unnamed_union}β anonymous π» (yes it's really named that, we love a mysterious icon)service_vm_paβ Physical address of Service VM. Pass to hypervisor directly πvma_baseβ VMA address of Service VM. Pass to hypervisor directly πlenβ Length of the memory mapping. Pass to hypervisor directly, that's the rule πΈ
π friendly reminder: the "Pass to hypervisor directly" thing shows up on every single one of these. It's not me being lazy, it's in the source. respect the lore.
π SEE ALSO π
the whole friend group π«Ά β Kernel file ./include/uapi/linux/acrn.h:
struct acrn_mmio_request(9)struct acrn_pio_request(9)struct acrn_pci_request(9)struct acrn_io_request(9)struct acrn_ioreq_notify(9)struct acrn_vm_creation(9)struct acrn_gp_regs(9)struct acrn_descriptor_ptr(9)struct acrn_regs(9)struct acrn_vcpu_regs(9)struct acrn_ptdev_irq(9)struct acrn_pcidev(9)struct acrn_mmio_dev_res(9)struct acrn_mmiodev(9)struct acrn_vdev(9)struct acrn_msi_entry(9)struct acrn_cstate_data(9)struct acrn_pstate_data(9)struct acrn_ioeventfd(9)struct acrn_irqfd(9)
like, the entire roster showed up to the group chat ππ₯
and that's the page!! huge shoutout to the ./include/uapi/linux directory for hosting all this, dated October 2026 (future queen behavior β), filed under struct acrn_vm_memmap(9). mwah, go read your hypervisor docs bestie ππ§
π¦ 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