Hi, I managed to run VMWare ESXi hypervisor (type 1) inside KVM. From there, I can install & run nested guest Linux on this ESXi.
However, I find this very strange: I put some printk() at the top of function nested_vmx_run(), which should run to handle nested KVM. Below is the definition of nested_vmx_run() in vmx.c /* * nested_vmx_run() handles a nested entry, i.e., a VMLAUNCH or VMRESUME on L1 * for running an L2 nested guest. */ static int nested_vmx_run(struct kvm_vcpu *vcpu, bool launch) What I cannot understand is that this function is never hit, because my printk() never prints out anything to dmesg output. So this means ESXi never uses VMResume/VMLaunch? How is this possible, because it uses VMX for its implementation? I am banging my head into keyboard to figure out why. Any idea, please? Thanks, Jun