[dpdk-dev] device reset handling with igb_uio

Santosh R sankrast at gmail.com
Fri Jun 14 15:57:52 CEST 2019


 Hi,

    I have some question on igb_uio.
>From the below function call traces, vfio-pci module frees/allocates msi-x
vector table as part of
interrupt disable/enable. Where as igb-uio module, only masks/unmasks the
msi-x interrupt.
Does this mean, when using igb_uio, device can't undergo reset which clears
MSI-X vector table?
How to handle device reset with igb_uio?

igb-uio:
rte_intr_disable->uio_intr_disable->igbuio_pci_irqcontrol->pci_msi_mask_irq
rte_intr_enable->uio_intr_enable->igbuio_pci_irqcontrol->pci_msi_unmask_irq

igbuio_pci_open->igbuio_pci_enable_interrupts->pci_alloc_irq_vectors/request_irq
igbuio_pci_release->igbuio_pci_disable_interrupts->free_irq->pci_free_irq_vectors

vfio-pci:
rte_intr_disable->vfio_disable_msix->vfio_pci_ioctl->vfio_msi_disable->pci_free_irq_vectors
rte_intr_enable->vfio_enable_msix->vfio_pci_ioctl->vfio_msi_enable->pci_alloc_irq_vectors/vfio_msi_set_vector_signal->request_irq

Regards
-Santosh


More information about the dev mailing list