!449 LoongArch: add kvm support
Merge Pull Request from: @Hongchen_Zhang Added simulation of csr devices, interrupt controller devices, mmu, timers, etc. in kvm under loongarch structure. kvm-based acceleration for qemu applications on 5000 servers or 5000 desktops with loongarch cpu Characteristic Details: 1) cpu - Support up to 64 vcpu, support vcpu hot-plug 2) memory - Back-end memory supports normal huge pages and transparent huge pages - Support balloon - Support memory hot-swap 3) Peripherals - Support standard interfaces PCI, SATA, SCSI, USB, virtio devices - Support multiple NICs, multiple disks - Supports hot-plug of devices 4) boot - Support UEFI bios boot - Support boot order - Direct kernel boot support - Support tpm 5) Migration - Support for virtual machine snapshots - Support for virtual machine saving and recovery - Support for shared storage migration - Support for incremental migration - Supports full copy migration of storage Test passed with below step: 1、Install virt-manager 2、Install libvirt 3、Install qemu 4、Download loongarch's qcow2 file 5、Create a virtual machine on virtu-manager using the qcow2 file 6、Start the virtual machine and find that the virtual machine can run normally Link:https://gitee.com/openeuler/kernel/pulls/449 Reviewed-by: Guo Dongtai <guodongtai@kylinos.cn> Reviewed-by: Kevin Zhu <zhukeqian1@huawei.com> Reviewed-by: Zheng Zengkai <zhengzengkai@huawei.com> Signed-off-by: Zheng Zengkai <zhengzengkai@huawei.com>
Showing
arch/loongarch/kvm/Kconfig
0 → 100644
arch/loongarch/kvm/Makefile
0 → 100644
arch/loongarch/kvm/csr.c
0 → 100644
此差异已折叠。
arch/loongarch/kvm/emulate.c
0 → 100644
arch/loongarch/kvm/entry.S
0 → 100644
arch/loongarch/kvm/exit.c
0 → 100644
arch/loongarch/kvm/fpu.c
0 → 100644
arch/loongarch/kvm/hypcall.c
0 → 100644
此差异已折叠。
此差异已折叠。
arch/loongarch/kvm/interrupt.c
0 → 100644
此差异已折叠。
arch/loongarch/kvm/irq.h
0 → 100644
arch/loongarch/kvm/irqfd.c
0 → 100644
此差异已折叠。
arch/loongarch/kvm/kvm_compat.c
0 → 100644
此差异已折叠。
arch/loongarch/kvm/kvm_compat.h
0 → 100644
此差异已折叠。
arch/loongarch/kvm/kvmcpu.h
0 → 100644
此差异已折叠。
arch/loongarch/kvm/kvmcsr.h
0 → 100644
此差异已折叠。
arch/loongarch/kvm/loongarch.c
0 → 100644
此差异已折叠。
arch/loongarch/kvm/mmu.c
0 → 100644
此差异已折叠。
arch/loongarch/kvm/timer.c
0 → 100644
此差异已折叠。
arch/loongarch/kvm/trace.h
0 → 100644
此差异已折叠。
想要评论请 注册 或 登录