On Wed, Oct 02, 2013 at 12:49:06PM +0200, Alexander Gordeev wrote:
>  
> +     err = pci_msix_table_size(dev->pdev);
> +     if (err < 0)
> +             return err;
> +
>       nvec = dev->caps.num_ports * num_online_cpus() + MLX5_EQ_VEC_COMP_BASE;
>       nvec = min_t(int, nvec, num_eqs);
> +     nvec = min_t(int, nvec, err);
>       if (nvec <= MLX5_EQ_VEC_COMP_BASE)
>               return -ENOSPC;

Making sure we don't request more vectors then the device's is capable
of -- looks good.
>  
> @@ -131,20 +136,15 @@ static int mlx5_enable_msix(struct mlx5_core_dev *dev)
>       for (i = 0; i < nvec; i++)
>               table->msix_arr[i].entry = i;
>  
> -retry:
> -     table->num_comp_vectors = nvec - MLX5_EQ_VEC_COMP_BASE;
>       err = pci_enable_msix(dev->pdev, table->msix_arr, nvec);
> -     if (err <= 0) {
> +     if (err) {
> +             kfree(table->msix_arr);
>               return err;
> -     } else if (err > MLX5_EQ_VEC_COMP_BASE) {
> -             nvec = err;
> -             goto retry;
>       }
>  

According to latest sources, pci_enable_msix() may still fail so why
do you want to remove this code?

> -     mlx5_core_dbg(dev, "received %d MSI vectors out of %d requested\n", 
> err, nvec);
> -     kfree(table->msix_arr);
> +     table->num_comp_vectors = nvec - MLX5_EQ_VEC_COMP_BASE;
>  
> -     return -ENOSPC;
> +     return 0;
>  }
>  
>  static void mlx5_disable_msix(struct mlx5_core_dev *dev)
> -- 
> 1.7.7.6
> 
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majord...@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to