I/O
客户机退出后回调用vmx_handle_exit() 这里应该是处理的IO请求或者其他
基本的函数调用过程:
kvm_vcpu_ioctl->kvm_arch_vcpu_ioctl_run(vcpu, vcpu->runkvm_arch_vcpu_ioctl_run(vcpu, vcpu->run)->__vcpu_run(vcpu)->vcpu_enter_guest(vcpu)->
----------kvm_x86_ops->run(vcpu)(vmx_vcpu_run){这个函数完成的是真正的开启VCPU,该函数返回时代表的是VCPU EXIT ,实际在__vmx_complete_interrupts实际在__vmx_complete_interrupts调用前VCPU已经退出了}
----------kvm_x86_ops->handle_exit(vcpu)( 已IO指令出错为例子)-> vmx_handle_exit{kvm_vmx_exit_handlers[exit_reason](vcpu);}->handle_io->kvm_fast_pio_out->em