From 1707fc370ac1f7f962132c5f580d77899bd8ecf1 Mon Sep 17 00:00:00 2001 From: "David B. Kinder" Date: Mon, 9 Jul 2018 12:40:19 -0700 Subject: [PATCH] doc: add memory management HLD Transcribe and publish the reviewed memory managment HLD into the ACRN doc set as a developer guide Signed-off-by: David B. Kinder --- doc/developer-guides/images/mem-image1.png | Bin 0 -> 4817 bytes doc/developer-guides/images/mem-image2.png | Bin 0 -> 23723 bytes doc/developer-guides/images/mem-image3.png | Bin 0 -> 16635 bytes doc/developer-guides/images/mem-image4.png | Bin 0 -> 11343 bytes doc/developer-guides/images/mem-image5.png | Bin 0 -> 35944 bytes doc/developer-guides/images/mem-image6.png | Bin 0 -> 45864 bytes doc/developer-guides/images/mem-image7.png | Bin 0 -> 43615 bytes doc/developer-guides/index.rst | 1 + doc/developer-guides/memmgt-hld.rst | 248 +++++++++++++++++++++ 9 files changed, 249 insertions(+) create mode 100644 doc/developer-guides/images/mem-image1.png create mode 100644 doc/developer-guides/images/mem-image2.png create mode 100644 doc/developer-guides/images/mem-image3.png create mode 100644 doc/developer-guides/images/mem-image4.png create mode 100644 doc/developer-guides/images/mem-image5.png create mode 100644 doc/developer-guides/images/mem-image6.png create mode 100644 doc/developer-guides/images/mem-image7.png create mode 100644 doc/developer-guides/memmgt-hld.rst diff --git a/doc/developer-guides/images/mem-image1.png b/doc/developer-guides/images/mem-image1.png new file mode 100644 index 0000000000000000000000000000000000000000..64baf1bb97f0c40f01a69ee3b45b01d65296b9e0 GIT binary patch literal 4817 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 F{{VO{WFi0n literal 0 HcmV?d00001 diff --git a/doc/developer-guides/images/mem-image2.png b/doc/developer-guides/images/mem-image2.png new file mode 100644 index 0000000000000000000000000000000000000000..b34ea6aebf339553d0d0718582f834ce4c99a730 GIT binary patch literal 23723 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 literal 0 HcmV?d00001 diff --git a/doc/developer-guides/images/mem-image5.png b/doc/developer-guides/images/mem-image5.png new file mode 100644 index 0000000000000000000000000000000000000000..696cd5737f894e2c34f6060f781d7e9cb1bebe04 GIT binary patch literal 35944 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 L1Uy$%>;3-$i@ts) literal 0 HcmV?d00001 diff --git a/doc/developer-guides/images/mem-image6.png b/doc/developer-guides/images/mem-image6.png new file mode 100644 index 0000000000000000000000000000000000000000..44ac7c3bb6b7c52440b7692b5c8312f7a9cd2a94 GIT binary patch literal 45864 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 z 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 E2S4K|BLDyZ literal 0 HcmV?d00001 diff --git a/doc/developer-guides/index.rst b/doc/developer-guides/index.rst index 482f3aaff..b4d120e1e 100644 --- a/doc/developer-guides/index.rst +++ b/doc/developer-guides/index.rst @@ -7,6 +7,7 @@ Developer Guides :maxdepth: 1 primer.rst + memmgt-hld.rst virtio-hld.rst ../api/index.rst ../reference/kconfig/index.rst diff --git a/doc/developer-guides/memmgt-hld.rst b/doc/developer-guides/memmgt-hld.rst new file mode 100644 index 000000000..8f230c18a --- /dev/null +++ b/doc/developer-guides/memmgt-hld.rst @@ -0,0 +1,248 @@ +.. _memmgt-hld: + +Memory Management High-Level Design +################################### + +This document describes memory management for the ACRN hypervisor. + +Overview +******** + +In the ACRN hypervisor system, there are few different memory spaces to +consider. From the hypervisor's point of view there are: + +- Host Physical Address (HPA): the native physical address space, and +- Host Virtual Address (HVA): the native virtual address space based on + a MMU. A page table is used to do the translation between HPA and HVA + spaces. + +And from the Guest OS running on a hypervisor there are: + +- Guest Physical Address (GPA): the guest physical address space from a + virtual machine. GPA to HPA transition is usually based on a + MMU-like hardware module (EPT in X86), and associated with a page + table +- Guest Virtual Address (GVA): the guest virtual address space from a + virtual machine based on a vMMU + +.. figure:: images/mem-image2.png + :align: center + :width: 900px + :name: mem-overview + + ACRN Memory Mapping Overview + +:numref:`mem-overview` provides an overview of the ACRN system memory +mapping, showing: + +- GVA to GPA mapping based on vMMU on a VCPU in a VM +- GPA to HPA mapping based on EPT for a VM in the hypervisor +- HVA to HPA mapping based on MMU in the hypervisor + +This document illustrates the memory management infrastructure for the +ACRN hypervisor and how it handles the different memory space views +inside the hypervisor and from a VM: + +- How ACRN hypervisor manages host memory (HPA/HVA) +- How ACRN hypervisor manages SOS guest memory (HPA/GPA) +- How ACRN hypervisor & SOS DM manage UOS guest memory (HPA/GPA) + +Hypervisor Memory Management +**************************** + +The ACRN hypervisor is the primary owner to manage system +memory. Typically the boot firmware (e.g., EFI) passes the platform physical +memory layout - E820 table to the hypervisor. The ACRN hypervisor does its memory +management based on this table. + +Physical Memory Layout - E820 +============================= + +The boot firmware (e.g., EFI) passes the E820 table through a multiboot protocol. +This table contains the original memory layout for the platform. + +.. figure:: images/mem-image1.png + :align: center + :width: 900px + :name: mem-layout + + Physical Memory Layout Example + +:numref:`mem-layout` is an example of the physical memory layout based on a simple +platform E820 table. The following sections demonstrate different memory +space management by referencing it. + +Physical to Virtual Mapping +=========================== + +ACRN hypervisor is running under paging mode, so after receiving +the platform E820 table, ACRN hypervisor creates its MMU page table +based on it. This is done by the function init_paging() for all +physical CPUs. + +The memory mapping policy here is: + +- Identical mapping for each physical CPU (ACRN hypervisor's memory + could be relocatable in a future implementation) +- Map all memory regions with UNCACHED type +- Remap RAM regions to WRITE-BACK type + +.. figure:: images/mem-image4.png + :align: center + :width: 900px + :name: vm-layout + + Hypervisor Virtual Memory Layout + +:numref:`vm-layout` shows: + +- Hypervisor can access all of system memory +- Hypervisor has an UNCACHED MMIO/PCI hole reserved for devices, such + as for LAPIC/IOAPIC access +- Hypervisor has its own memory with WRITE-BACK cache type for its + code and data (< 1M part is for secondary CPU reset code) + +Service OS Memory Management +**************************** + +After the ACRN hypervisor starts, it creates the Service OS as its first +VM. The Service OS runs all the native device drivers, manage the +hardware devices, and provides I/O mediation to guest VMs. The Service +OS is in charge of the memory allocation for Guest VMs as well. + +ACRN hypervisor passes the whole system memory access (except its own +part) to the Service OS. The Service OS must be able to access all of +the system memory except the hypervisor part. + +Guest Physical Memory Layout - E820 +=================================== + +The ACRN hypervisor passes the original E820 table to the Service OS +after filtering out its own part. So from Service OS's view, it sees +almost all the system memory as shown here: + +.. figure:: images/mem-image3.png + :align: center + :width: 900px + :name: sos-mem-layout + + SOS Physical Memory Layout + +Host to Guest Mapping +===================== + +ACRN hypervisor creates Service OS's host (HPA) to guest (GPA) mapping +(EPT mapping) through the function +``prepare_vm0_memmap_and_e820()`` when it creates the SOS VM. It follows +these rules: + +- Identical mapping +- Map all memory range with UNCACHED type +- Remap RAM entries in E820 (revised) with WRITE-BACK type +- Unmap ACRN hypervisor memory range +- Unmap ACRN hypervisor emulated vLAPIC/vIOAPIC MMIO range + +The host to guest mapping is static for the Service OS; it will not +change after the Service OS begins running. Each native device driver +can access its MMIO through this static mapping. EPT violation is only +serving for vLAPIC/vIOAPIC's emulation in the hypervisor for Service OS +VM. + +User OS Memory Management +************************* + +User OS VM is created by the DM (Device Model) application running in +the Service OS. DM is responsible for the memory allocation for a User +or Guest OS VM. + +Guest Physical Memory Layout - E820 +=================================== + +DM will create the E820 table for a User OS VM based on these simple +rules: + +- If requested VM memory size < low memory limitation (defined in DM, + as 2GB), then low memory range = [0, requested VM memory size] +- If requested VM memory size > low memory limitation (defined in DM, + as 2GB), then low memory range = [0, 2GB], high memory range = [4GB, + 4GB + requested VM memory size - 2GB] + +.. figure:: images/mem-image6.png + :align: center + :width: 900px + :name: uos-mem-layout + + UOS Physical Memory Layout + +DM is doing UOS memory allocation based on hugeTLB mechanism by +default. The real memory mapping +may be scattered in SOS physical memory space, as shown below: + +.. figure:: images/mem-image5.png + :align: center + :width: 900px + :name: uos-mem-layout-hugetlb + + UOS Physical Memory Layout Based on Hugetlb + +Host to Guest Mapping +===================== + +A User OS VM's memory is allocated by the Service OS DM application, and +may come from different huge pages in the Service OS as shown in +:ref:`uos-mem-layout-hugetlb`. + +As Service OS has the full information of these huge pages size, +SOS-GPA and UOS-GPA, it works with the hypervisor to complete UOS's host +to guest mapping using this pseudo code: + +.. code-block:: c + + for x in allocated huge pages do + x.hpa = gpa2hpa_for_sos(x.sos_gpa) + host2guest_map_for_uos(x.hpa, x.uos_gpa, x.size) + end + +Trusty +====== + +For an Android User OS, there is a secure world called "trusty world +support", whose memory needs are taken care by the ACRN hypervisor for +security consideration. From the memory management's view, the trusty +memory space should not be accessible by SOS or UOS normal world. + +.. figure:: images/mem-image7.png + :align: center + :width: 900px + :name: uos-mem-layout-trusty + + UOS Physical Memory Layout with Trusty + +Memory Interaction +****************** + +Previous sections described different memory spaces management in the +ACRN hypervisor, Service OS, and User OS. Among these memory spaces, +there are different kinds of interaction, for example, a VM may do a +hypercall to the hypervisor that includes a data transfer, or an +instruction emulation in the hypervisor may need to access the Guest +instruction pointer register to fetch instruction data. + +Access GPA from Hypervisor +========================== + +When a hypervisor needs access to the GPA for data transfers, the caller +from the Guest must make sure this memory range's GPA is address +continuous. But for HPA in the hypervisor, it could be address +dis-continuous (especially for UOS under hugetlb allocation mechanism). +For example, a 4MB GPA range may map to 2 different 2MB huge pages. The +ACRN hypervisor needs to take care of this kind of data transfer by +doing EPT page walking based on its HPA. + +Access GVA from Hypervisor +========================== + +Likely, when hypervisor need to access GVA for data transfer, both GPA +and HPA could be address dis-continuous. The ACRN hypervisor must pay +attention to this kind of data transfer, and handle it by doing page +walking based on both its GPA and HPA.