Message ID | 20210304025543.334912-2-coxu@redhat.com |
---|---|
State | New |
Headers | show |
Series | Reducing memory usage of i40e for kdump | expand |
>-----Original Message----- >From: Coiby Xu <coxu@redhat.com> >Sent: Wednesday, March 3, 2021 6:56 PM >To: netdev@vger.kernel.org >Cc: kexec@lists.infradead.org; intel-wired-lan@lists.osuosl.org; Jakub Kicinski ><kuba@kernel.org>; Brandeburg, Jesse <jesse.brandeburg@intel.com>; Nguyen, >Anthony L <anthony.l.nguyen@intel.com>; David S. Miller ><davem@davemloft.net>; open list <linux-kernel@vger.kernel.org> >Subject: [PATCH v1 1/3] i40e: use minimal tx and rx pairs for kdump > >Set the number of the MSI-X vectors to 1. When MSI-X is enabled, it's not allowed >to use more TC queue pairs than MSI-X vectors >(pf->num_lan_msix) exist. Thus the number of tx and rx pairs >(vsi->num_queue_pairs) will be equal to the number of MSI-X vectors, i.e., 1. > >Signed-off-by: Coiby Xu <coxu@redhat.com> >--- > drivers/net/ethernet/intel/i40e/i40e_main.c | 9 +++++++++ > 1 file changed, 9 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 353deae139f9..77bf8c392750 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_main.c +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c @@ -6,6 +6,7 @@ #include <linux/pci.h> #include <linux/bpf.h> #include <generated/utsrelease.h> +#include <linux/crash_dump.h> /* Local includes */ #include "i40e.h" @@ -15485,6 +15486,14 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent) if (err) goto err_switch_setup; + /* Reduce tx and rx pairs for kdump + * When MSI-X is enabled, it's not allowed to use more TC queue + * pairs than MSI-X vectors (pf->num_lan_msix) exist. Thus + * vsi->num_queue_pairs will be equal to pf->num_lan_msix, i.e., 1. + */ + if (is_kdump_kernel()) + pf->num_lan_msix = 1; + pf->udp_tunnel_nic.set_port = i40e_udp_tunnel_set_port; pf->udp_tunnel_nic.unset_port = i40e_udp_tunnel_unset_port; pf->udp_tunnel_nic.flags = UDP_TUNNEL_NIC_INFO_MAY_SLEEP;
Set the number of the MSI-X vectors to 1. When MSI-X is enabled, it's not allowed to use more TC queue pairs than MSI-X vectors (pf->num_lan_msix) exist. Thus the number of tx and rx pairs (vsi->num_queue_pairs) will be equal to the number of MSI-X vectors, i.e., 1. Signed-off-by: Coiby Xu <coxu@redhat.com> --- drivers/net/ethernet/intel/i40e/i40e_main.c | 9 +++++++++ 1 file changed, 9 insertions(+)