mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2025-02-22 11:22:26 +00:00
Between X86 and AArch64, there is some difference in booting a VM: - X86_64 can setup IOAPIC before creating any VCPU. - AArch64 have to create VCPU's before creating GIC. The old process is: 1. load_kernel() load kernel binary configure system 2. activate_vcpus() create & start VCPU's So we need to separate "activate_vcpus" into "create_vcpus" and "activate_vcpus" (to start vcpus only). Setup GIC and create FDT between the 2 steps. The new procedure is: 1. load_kernel() load kernel binary (X86_64) configure system 2. create VCPU's 3. (AArch64) setup GIC 4. (AArch64) configure system 5. start VCPU's Signed-off-by: Michael Zhao <michael.zhao@arm.com>