[dpdk-dev] [PATCH] kni: fix pci_enable_msix_range error handling
Ferruh Yigit
ferruh.yigit at intel.com
Mon Feb 5 20:05:14 CET 2018
On 12/18/2017 6:16 AM, Andy Roulin wrote:
> pci_enable_msix_range's return value has a different meaning than what
> was previously returned by pci_enable_msix.
>
> "It returns a negative errno if an error occurs. If it succeeds, it
> returns the actual number of interrupts allocated and indicates the
> successful configuration of MSI-X capability structure with new
> allocated MSI-X interrupts."
>
> The following commit introduced pci_enable_msix_range:
> dpdk: 9fb3cd2c ("kni: fix ethtool build with kernel 4.11")
> http://dpdk.org/dev/patchwork/patch/24076/
Hi Andy,
This is updating driver within KNI, and these drivers are used for ethtool
support and most of the driver is already not used at all.
I doubt the updated code is functional at all.
Did you encounter any problem?
These drivers are already outdated, and I am definitely not for actively
maintaining them which is not required for ethtool support.
>
> Signed-off-by: Andy Roulin <aroulin at cumulusnetworks.com>
> ---
> lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c
> index e0f427a..32ef3b9 100644
> --- a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c
> +++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c
> @@ -1043,14 +1043,16 @@ static void igb_set_interrupt_capability(struct igb_adapter *adapter, bool msix)
> #ifdef HAVE_PCI_ENABLE_MSIX
> err = pci_enable_msix(pdev,
> adapter->msix_entries, numvecs);
> + if (err == 0)
> + break;
> #else
> err = pci_enable_msix_range(pdev,
> adapter->msix_entries,
> numvecs,
> numvecs);
> -#endif
> - if (err == 0)
> + if (err < 0)
> break;
> +#endif
> }
> /* MSI-X failed, so fall through and try MSI */
> dev_warn(pci_dev_to_dev(pdev), "Failed to initialize MSI-X interrupts. "
>
More information about the dev
mailing list