Skip to content
Anup Patel edited this page Sep 1, 2019 · 17 revisions

The Kernel Based Virtual Machive (KVM) is an open-source Type2 hypervisor which converts Linux kernel into a hypervisor. We typically have two main parts in the KVM hypervisor: KVM kernel module and KVM user-space tool.

This wiki is all about KVM RISC-V which is the RISC-V port of the KVM hypervisor.

Linux Guest on QEMU with RISC-V Hypervisor Extension Support

Currently, we can boot RISC-V 64bit SMP Guest using KVM RISC-V on QEMU. We use QEMU as our development vehicle for RISC-V hypervisor development.

To achieve this we need following images:

  1. QEMU with RISC-V Hypervisor Extension Emulation
  2. OpenSBI Firmware with Hypervisor Extension Support
  3. Common Host & Guest Kernel
  4. KVMTOOL
  5. Host RootFS with KVMTOOL and Guest Kernel

The following sub-sections provide detailed steps to build and run RISC-V KVM on QEMU.

1. Build QEMU with RISC-V Hypervisor Extension Emulation

TBD.

2. Build OpenSBI Firmware with Hypervisor Extension Support

TBD.

3. Build Common Host & Guest Linux Kernel Image

TBD.

4. Build KVMTOOL

TBD.

5. Build Host RootFS with KVMTOOL and Guest Linux

TBD.

6. Run RISC-V KVM on QEMU

TBD.

Clone this wiki locally