[dpdk-dev] [PATCH v2 0/4] fix the issue that DPDK takes over virtio device blindly
Stephen Hemminger
stephen at networkplumber.org
Mon Jan 4 18:25:07 CET 2016
On Mon, 4 Jan 2016 01:56:09 +0800
Huawei Xie <huawei.xie at intel.com> wrote:
> v2 changes:
> Remove unnecessary assignment of NULL to dev->data->mac_addrs
> Ajust one comment's position
> change LOG level from ERR to INFO
>
> virtio PMD doesn't set RTE_PCI_DRV_NEED_MAPPING in drv_flags of its
> eth_driver. It will try igb_uio and PORT IO in turn to configure
> virtio device. Even user in guest VM doesn't want to use virtio for
> DPDK, virtio PMD will take over the device blindly.
>
> The more serious problem is kernel driver is still manipulating the
> device, which causes driver conflict.
>
> This patch checks if there is any kernel driver manipulating the
> virtio device before virtio PMD uses port IO to configure the device.
>
> Huawei Xie (4):
> eal: make the comment more accurate
> eal: set kdrv to RTE_KDRV_NONE if kernel driver isn't manipulating the device.
> virtio: return 1 to tell the kernel we don't take over this device
> virtio: check if any kernel driver is manipulating the virtio device
>
> drivers/net/virtio/virtio_ethdev.c | 16 ++++++++++++++--
> lib/librte_eal/common/eal_common_pci.c | 8 ++++----
> lib/librte_eal/linuxapp/eal/eal_pci.c | 2 +-
> 3 files changed, 19 insertions(+), 7 deletions(-)
>
Overall looks good, thanks for addressing this.
It would be good to note that VFIO no-IOMMU mode should work for this
as well.
More information about the dev
mailing list