最佳答案:我们的分析代码是基于DPDK release 20.02版本的,因为正是在这个版本增加了基于Mellanox设备的vDPA PMD(回想当初写第一篇关于DPDK的文章还是release 16.07)。
我们的分析代码是基于DPDK release 20.02版本的,因为正是在这个版本增加了基于Mellanox设备的vDPA PMD(回想当初写第一篇关于DPDK的文章还是release 16.07)。 Mellanox支持vDPA的网卡有 ConnectX-6, Mellanox ConnectX-6 Dx 以及Mellanox BlueField。在DPDK的example中有一个vDPA的使用例子,这个是在18.11版本加入的,其使用方式可以参考。这里我们就从这个example入手分析下DPDK中关于vDPA的实现。
首先一定是通过-w指定的PCI设备加载对应的驱动,我们以Mellanox的vDPA驱动(mlx5_vdpa_driver)为例分析,注意其相关代码和Mellanox 正常mlx5驱动不在一起,而是在drivers/vdpa的专门路径中。