1. 什么是VFIO
- 用户态驱动框架
- Virtual Function IO
- 基于IOMMU的DMA和中断隔离
- 完整的device的访问(MMIO, IO port, PCI config)
2. 绑定驱动
比如在跑dpdk之前, 先要绑定用户态驱动框架, 比如
和这里的uio框架并列的, 能被status show出来的driver, 就有vfio: vfio-pci. -- 虽然我没用过... 通过VFIO, 可以:sudo usertools/dpdk-devbind.py --status sudo usertools/dpdk-devbind.py -b uio_pci_generic 04:00.0
- 给device assign VFIO driver(bind), 或者unbind
- 有更好的安全模式
- device隔离
- 移植性好
3. VFIO要解决的问题
PCI-assign的问题: