[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <BL0PR11MB3122D2AF6CA3FFCE65FFD2FEBD609@BL0PR11MB3122.namprd11.prod.outlook.com>
Date: Fri, 21 Apr 2023 05:55:54 +0000
From: "Pucha, HimasekharX Reddy" <himasekharx.reddy.pucha@...el.com>
To: "Raczynski, Piotr" <piotr.raczynski@...el.com>,
"intel-wired-lan@...ts.osuosl.org" <intel-wired-lan@...ts.osuosl.org>
CC: "Swiatkowski, Michal" <michal.swiatkowski@...el.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"Brandeburg, Jesse" <jesse.brandeburg@...el.com>,
"Saleem, Shiraz" <shiraz.saleem@...el.com>
Subject: RE: [Intel-wired-lan] [PATCH net-next v3 8/8] ice: add dynamic
interrupt allocation
> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces@...osl.org> On Behalf Of Raczynski, Piotr
> Sent: Thursday, March 23, 2023 5:55 PM
> To: intel-wired-lan@...ts.osuosl.org
> Cc: Swiatkowski, Michal <michal.swiatkowski@...el.com>; netdev@...r.kernel.org; Brandeburg, Jesse <jesse.brandeburg@...el.com>; Saleem, Shiraz <shiraz.saleem@...el.com>
> Subject: [Intel-wired-lan] [PATCH net-next v3 8/8] ice: add dynamic interrupt allocation
>
> Currently driver can only allocate interrupt vectors during init phase by calling pci_alloc_irq_vectors. Change that and make use of new pci_msix_alloc_irq_at/pci_msix_free_irq API and enable to allocate and free more interrupts after MSIX has been enabled. Since not all platforms supports dynamic allocation, check it with pci_msix_can_alloc_dyn.
>
> Extend the tracker to keep track how many interrupts are allocated initially so when all such vectors are already used, additional interrupts are automatically allocated dynamically. Remember each interrupt allocation method to then free appropriately. Since some features may require interrupts allocated dynamically add appropriate VSI flag and take it into account when allocating new interrupt.
>
> Reviewed-by: Michal Swiatkowski <michal.swiatkowski@...ux.intel.com>
> Signed-off-by: Piotr Raczynski <piotr.raczynski@...el.com>
> ---
> drivers/net/ethernet/intel/ice/ice.h | 3 +
> drivers/net/ethernet/intel/ice/ice_base.c | 2 +-
> drivers/net/ethernet/intel/ice/ice_idc.c | 2 +-
> drivers/net/ethernet/intel/ice/ice_irq.c | 107 ++++++++++++++++++---
> drivers/net/ethernet/intel/ice/ice_irq.h | 5 +-
> drivers/net/ethernet/intel/ice/ice_main.c | 2 +-
> drivers/net/ethernet/intel/ice/ice_sriov.c | 5 +-
> 7 files changed, 105 insertions(+), 21 deletions(-)
>
Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@...el.com> (A Contingent worker at Intel)
Powered by blists - more mailing lists