Message ID | 20220520180703.680212-1-michal.maloszewski@intel.com |
---|---|
State | Accepted |
Delegated to: | Anthony Nguyen |
Headers | show |
Series | [net,v2] i40e: Fix interface init with MSI interrupts (no MSI-X) | expand |
>-----Original Message----- >From: Intel-wired-lan <intel-wired-lan-bounces@osuosl.org> On Behalf Of >Michal Maloszewski >Sent: Friday, May 20, 2022 11:07 AM >To: intel-wired-lan@lists.osuosl.org >Cc: Maloszewski, Michal <michal.maloszewski@intel.com>; Lukwinski, Dawid ><dawid.lukwinski@intel.com> >Subject: [Intel-wired-lan] [PATCH net v2] i40e: Fix interface init with MSI >interrupts (no MSI-X) > >Fix the inability to bring an interface up on a setup with only MSI interrupts >enabled (no MSI-X). >Solution is to add a default number of QPs = 1. This is enough, since without >MSI-X support driver enables only a basic feature set. > >Fixes: bc6d33c8d93f ("i40e: Fix the number of queues available to be mapped >for use") >Signed-off-by: Dawid Lukwinski <dawid.lukwinski@intel.com> >Signed-off-by: Michal Maloszewski <michal.maloszewski@intel.com> >--- >v2: Moving the comment in right place >--- > drivers/net/ethernet/intel/i40e/i40e_main.c | 4 ++++ > 1 file changed, 4 insertions(+) Tested-by: Dave Switzer <david.switzer@intel.com>
diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c index 8572993972ef..6c41ee966570 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_main.c +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c @@ -1835,11 +1835,15 @@ static void i40e_vsi_setup_queue_map(struct i40e_vsi *vsi, * non-zero req_queue_pairs says that user requested a new * queue count via ethtool's set_channels, so use this * value for queues distribution across traffic classes + * We need at least one queue pair for the interface + * to be usable as we see in else statement. */ if (vsi->req_queue_pairs > 0) vsi->num_queue_pairs = vsi->req_queue_pairs; else if (pf->flags & I40E_FLAG_MSIX_ENABLED) vsi->num_queue_pairs = pf->num_lan_msix; + else + vsi->num_queue_pairs = 1; } /* Number of queues per enabled TC */