但是虚拟设备是没有PCIe硬件存在的,这个写入操作引发VM_EXIT,进入到KVM的代码,KVM之后通过eventfd通知qemu,触发qemu的主事件循环里处理: 其中blk_aio_prwv的代码如下,这里创建IO协程: 我们编写的IO接口函数就是在这个协程里面被调用的: 三、接口实现 前面的IO路径已经跟到了pfbd_co_pwritev函数,作为接口实现的工作...
if (vq->handle_aio_output) { event_notifier_set(&vq->host_notifier); } else if (vq->handle_output) { vq->handle_output(vdev, vq); }