kvm中超级呼叫的输入在哪里?

bal*_*486 5 linux kvm linux-kernel

我试图了解linux中的virtio机制.我读到kick函数会通知主机端有关新发布的缓冲区.我特别关注virtio_net.一旦数据包准备好传输,就会在这里调用kick函数.从这里我追踪了这个电话,我认为它是这样的.从这里到哪里去了?哪个代码包含virtio的后端驱动程序.管理程序中的代码将在何处进行?谢谢...

谢谢,巴拉

Mat*_*ery 3

这里的IO端口访问是与虚拟机的“硬件”进行通信,这是由支持VM的QEMU实例实现的。QEMU 代码的起始位置virtio_ioport_write()hw/virtio-pci.c.