[{"id":3678096,"web_url":"http://patchwork.ozlabs.org/comment/3678096/","msgid":"<aeDENQXk8Mz1elXb@boxer>","list_archive_url":null,"date":"2026-04-16T11:12:53","subject":"Re: [Intel-wired-lan] [PATCH iwl-net] i40e: keep q_vectors array in\n sync with channel count changes","submitter":{"id":77750,"url":"http://patchwork.ozlabs.org/api/people/77750/","name":"Maciej Fijalkowski","email":"maciej.fijalkowski@intel.com"},"content":"On Tue, Apr 14, 2026 at 02:14:05PM +0200, Maciej Fijalkowski wrote:\n> For the main VSI, i40e_set_num_rings_in_vsi() always derives\n> num_q_vectors from pf->num_lan_msix. At the same time, ethtool -L stores\n> the user requested channel count in vsi->req_queue_pairs and the queue\n> setup path uses that value for the effective number of queue pairs.\n> \n> This leaves queue and vector counts out of sync after shrinking channel\n> count via ethtool -L. The active queue configuration is reduced, but the\n> VSI still keeps the full PF-sized q_vector topology.\n> \n> That mismatch breaks reconfiguration flows which rely on vector/NAPI\n> state matching the effective channel configuration. In particular,\n> toggling /sys/class/net/<dev>/threaded after reducing the channel count\n> can hang, and later channel-count changes can fail because VSI reinit\n> does not rebuild q_vectors to match the new vector count.\n> \n> Fix this by making the main VSI num_q_vectors follow the effective\n> requested channel count, capped by the available MSI-X vectors. Update\n> i40e_vsi_reinit_setup() to rebuild q_vectors during VSI reinit so the\n> vector topology is refreshed together with the ring arrays when channel\n> count changes.\n> \n> Keep alloc_queue_pairs unchanged and based on pf->num_lan_qps so the VSI\n> retains its full queue capacity.\n> \n> Selftest napi_threaded.py was originally used when Jakub reported hang\n> on /sys/class/net/<dev>/threaded toggle. In order to make it pass on\n> i40e, use persistent NAPI configuration for q_vector NAPIs so NAPI\n> identity and threaded settings survive q_vector reallocation across\n> channel-count changes. This is achieved by using netif_napi_add_config()\n> when configuring q_vectors.\n> \n> $ export NETIF=ens259f1np1\n> $ sudo -E env PATH=\"$PATH\" ./tools/testing/selftests/drivers/net/napi_threaded.py\n> TAP version 13\n> 1..3\n> ok 1 napi_threaded.napi_init\n> ok 2 napi_threaded.change_num_queues\n> ok 3 napi_threaded.enable_dev_threaded_disable_napi_threaded\n> Totals: pass:3 fail:0 xfail:0 xpass:0 skip:0 error:0\n> \n> Reported-by: Jakub Kicinski <kuba@kernel.org>\n> Closes: https://lore.kernel.org/intel-wired-lan/20260316133100.6054a11f@kernel.org/\n> Fixes: d2a69fefd756 (\"i40e: Fix changing previously set num_queue_pairs for PFs\")\n> Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>\n> ---\n>  drivers/net/ethernet/intel/i40e/i40e_main.c | 34 +++++++++++++++++----\n>  1 file changed, 28 insertions(+), 6 deletions(-)\n> \n> diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c\n> index 926d001b2150..5636ad71f940 100644\n> --- a/drivers/net/ethernet/intel/i40e/i40e_main.c\n> +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c\n> @@ -11403,10 +11403,14 @@ static void i40e_service_timer(struct timer_list *t)\n>  static int i40e_set_num_rings_in_vsi(struct i40e_vsi *vsi)\n>  {\n>  \tstruct i40e_pf *pf = vsi->back;\n> +\tu16 qps;\n>  \n>  \tswitch (vsi->type) {\n>  \tcase I40E_VSI_MAIN:\n>  \t\tvsi->alloc_queue_pairs = pf->num_lan_qps;\n> +\t\tqps = vsi->req_queue_pairs ?\n> +\t\t      min_t(u16, vsi->req_queue_pairs, pf->num_lan_qps) :\n> +\t\t      pf->num_lan_qps;\n>  \t\tif (!vsi->num_tx_desc)\n>  \t\t\tvsi->num_tx_desc = ALIGN(I40E_DEFAULT_NUM_DESCRIPTORS,\n>  \t\t\t\t\t\t I40E_REQ_DESCRIPTOR_MULTIPLE);\n> @@ -11414,7 +11418,8 @@ static int i40e_set_num_rings_in_vsi(struct i40e_vsi *vsi)\n>  \t\t\tvsi->num_rx_desc = ALIGN(I40E_DEFAULT_NUM_DESCRIPTORS,\n>  \t\t\t\t\t\t I40E_REQ_DESCRIPTOR_MULTIPLE);\n>  \t\tif (test_bit(I40E_FLAG_MSIX_ENA, pf->flags))\n> -\t\t\tvsi->num_q_vectors = pf->num_lan_msix;\n> +\t\t\tvsi->num_q_vectors = max_t(int, 1,\n> +\t\t\t\t\t\t   min_t(int, qps, pf->num_lan_msix));\n>  \t\telse\n>  \t\t\tvsi->num_q_vectors = 1;\n>  \n> @@ -12043,7 +12048,8 @@ static int i40e_vsi_alloc_q_vector(struct i40e_vsi *vsi, int v_idx)\n>  \tcpumask_copy(&q_vector->affinity_mask, cpu_possible_mask);\n>  \n>  \tif (vsi->netdev)\n> -\t\tnetif_napi_add(vsi->netdev, &q_vector->napi, i40e_napi_poll);\n> +\t\tnetif_napi_add_config(vsi->netdev, &q_vector->napi,\n> +\t\t\t\t      i40e_napi_poll, v_idx);\n>  \n>  \t/* tie q_vector and vsi together */\n>  \tvsi->q_vectors[v_idx] = q_vector;\n> @@ -14265,12 +14271,27 @@ static struct i40e_vsi *i40e_vsi_reinit_setup(struct i40e_vsi *vsi)\n>  \n>  \tpf = vsi->back;\n>  \n> +\tif (test_bit(I40E_FLAG_MSIX_ENA, pf->flags)) {\n> +\t\ti40e_put_lump(pf->irq_pile, vsi->base_vector, vsi->idx);\n> +\t\tvsi->base_vector = 0;\n> +\t}\n> +\n>  \ti40e_put_lump(pf->qp_pile, vsi->base_queue, vsi->idx);\n>  \ti40e_vsi_clear_rings(vsi);\n>  \n> -\ti40e_vsi_free_arrays(vsi, false);\n> +\ti40e_vsi_free_q_vectors(vsi);\n> +\ti40e_vsi_free_arrays(vsi, true);\n>  \ti40e_set_num_rings_in_vsi(vsi);\n> -\tret = i40e_vsi_alloc_arrays(vsi, false);\n> +\n> +\tret = i40e_vsi_alloc_arrays(vsi, true);\n> +\tif (ret)\n> +\t\tgoto err_vsi;\n\nSashiko warns about potential double-free on vsi->tx_rings. I will send a\nv2 where I include NULLing this ptr in i40e_vsi_alloc_arrays().\n\nThanks,\nMaciej\n\n> +\n> +\t/* Rebuild q_vectors during VSI reinit because the effective channel\n> +\t * count may change num_q_vectors. Keep vector topology aligned with the\n> +\t * queue configuration after ethtool's .set_channels() callback.\n> +\t */\n> +\tret = i40e_vsi_setup_vectors(vsi);\n>  \tif (ret)\n>  \t\tgoto err_vsi;\n>  \n> @@ -14282,7 +14303,7 @@ static struct i40e_vsi *i40e_vsi_reinit_setup(struct i40e_vsi *vsi)\n>  \t\tdev_info(&pf->pdev->dev,\n>  \t\t\t \"failed to get tracking for %d queues for VSI %d err %d\\n\",\n>  \t\t\t alloc_queue_pairs, vsi->seid, ret);\n> -\t\tgoto err_vsi;\n> +\t\tgoto err_lump;\n>  \t}\n>  \tvsi->base_queue = ret;\n>  \n> @@ -14306,7 +14327,6 @@ static struct i40e_vsi *i40e_vsi_reinit_setup(struct i40e_vsi *vsi)\n>  \treturn vsi;\n>  \n>  err_rings:\n> -\ti40e_vsi_free_q_vectors(vsi);\n>  \tif (vsi->netdev_registered) {\n>  \t\tvsi->netdev_registered = false;\n>  \t\tunregister_netdev(vsi->netdev);\n> @@ -14316,6 +14336,8 @@ static struct i40e_vsi *i40e_vsi_reinit_setup(struct i40e_vsi *vsi)\n>  \tif (vsi->type == I40E_VSI_MAIN)\n>  \t\ti40e_devlink_destroy_port(pf);\n>  \ti40e_aq_delete_element(&pf->hw, vsi->seid, NULL);\n> +err_lump:\n> +\ti40e_vsi_free_q_vectors(vsi);\n>  err_vsi:\n>  \ti40e_vsi_clear(vsi);\n>  \treturn NULL;\n> -- \n> 2.43.0\n>","headers":{"Return-Path":"<intel-wired-lan-bounces@osuosl.org>","X-Original-To":["incoming@patchwork.ozlabs.org","intel-wired-lan@lists.osuosl.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","intel-wired-lan@lists.osuosl.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=osuosl.org header.i=@osuosl.org header.a=rsa-sha256\n header.s=default header.b=G2aVCMZn;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=osuosl.org\n (client-ip=2605:bc80:3010::137; helo=smtp4.osuosl.org;\n envelope-from=intel-wired-lan-bounces@osuosl.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fxFl60mDCz1yCv\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 16 Apr 2026 21:14:10 +1000 (AEST)","from localhost (localhost [127.0.0.1])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 6D72A40863;\n\tThu, 16 Apr 2026 11:14:08 +0000 (UTC)","from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id Gyhqj8Oiq74a; Thu, 16 Apr 2026 11:14:07 +0000 (UTC)","from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 6D29B40868;\n\tThu, 16 Apr 2026 11:14:07 +0000 (UTC)","from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n by lists1.osuosl.org (Postfix) with ESMTP id 3F578127\n for <intel-wired-lan@lists.osuosl.org>; Thu, 16 Apr 2026 11:14:06 +0000 (UTC)","from localhost (localhost [127.0.0.1])\n by smtp4.osuosl.org (Postfix) with ESMTP id 25B5F40868\n for <intel-wired-lan@lists.osuosl.org>; Thu, 16 Apr 2026 11:14:06 +0000 (UTC)","from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id 5Zlns5BtE1ot for <intel-wired-lan@lists.osuosl.org>;\n Thu, 16 Apr 2026 11:14:05 +0000 (UTC)","from mgamail.intel.com (mgamail.intel.com [192.198.163.19])\n by smtp4.osuosl.org (Postfix) with ESMTPS id 14EB940863\n for <intel-wired-lan@lists.osuosl.org>; Thu, 16 Apr 2026 11:14:04 +0000 (UTC)","from orviesa007.jf.intel.com ([10.64.159.147])\n by fmvoesa113.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 16 Apr 2026 04:14:04 -0700","from fmsmsx901.amr.corp.intel.com ([10.18.126.90])\n by orviesa007.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 16 Apr 2026 04:14:04 -0700","from FMSMSX902.amr.corp.intel.com (10.18.126.91) by\n fmsmsx901.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.2.2562.37; Thu, 16 Apr 2026 04:14:02 -0700","from fmsedg903.ED.cps.intel.com (10.1.192.145) by\n FMSMSX902.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.2.2562.37 via Frontend Transport; Thu, 16 Apr 2026 04:14:02 -0700","from MW6PR02CU001.outbound.protection.outlook.com (52.101.48.8) by\n edgegateway.intel.com (192.55.55.83) with Microsoft SMTP Server\n (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n 15.2.2562.37; Thu, 16 Apr 2026 04:13:05 -0700","from DM4PR11MB6117.namprd11.prod.outlook.com (2603:10b6:8:b3::19) by\n PH7PR11MB5818.namprd11.prod.outlook.com (2603:10b6:510:132::11) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.48; Thu, 16 Apr\n 2026 11:13:02 +0000","from DM4PR11MB6117.namprd11.prod.outlook.com\n ([fe80::d9b3:e942:2686:3cdd]) by DM4PR11MB6117.namprd11.prod.outlook.com\n ([fe80::d9b3:e942:2686:3cdd%6]) with mapi id 15.20.9818.014; Thu, 16 Apr 2026\n 11:13:02 +0000"],"X-Virus-Scanned":["amavis at osuosl.org","amavis at osuosl.org"],"X-Comment":"SPF check N/A for local connections - client-ip=140.211.166.142;\n helo=lists1.osuosl.org; envelope-from=intel-wired-lan-bounces@osuosl.org;\n receiver=<UNKNOWN> ","DKIM-Filter":["OpenDKIM Filter v2.11.0 smtp4.osuosl.org 6D29B40868","OpenDKIM Filter v2.11.0 smtp4.osuosl.org 14EB940863"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org;\n\ts=default; t=1776338047;\n\tbh=cDPf5RyN1LaUkFaXyWPMMCuUbTcJBwHEcedIqiWCBoY=;\n\th=Date:From:To:CC:References:In-Reply-To:Subject:List-Id:\n\t List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:\n\t From;\n\tb=G2aVCMZn2xhgKV1IQcn93YF4NdcON+DbcsrJ+xEcrZQPROCM4lni4VGjRrYQkl7wL\n\t +3L6Bfp71ZEI5lMQCCWEIoTktPkEJ/WRolCp3iIOFpKJLxlC2jsLJSe0CEGSf8lpB1\n\t eU5MFS5ydJIsOFFEjkAEq3hSpJyt0sx91ebx4FkYyvXq18OWZZRlosVlJyGGpCllW9\n\t l5+plN73ljkmeZYdGR1tKYvPFGKysMiDBZSNRXth6b1XeBCoPvPBMCAEa0xA41NICs\n\t QAzKW3DRB33U3oBjOeZUhsyAIBnHPFS8KDEOO8zSKu4FMTPX2SamqUc8v2hbhMYG2o\n\t 6zH0Zvy0u2NNQ==","Received-SPF":"Pass (mailfrom) identity=mailfrom; client-ip=192.198.163.19;\n helo=mgamail.intel.com; envelope-from=maciej.fijalkowski@intel.com;\n receiver=<UNKNOWN>","DMARC-Filter":"OpenDMARC Filter v1.4.2 smtp4.osuosl.org 14EB940863","X-CSE-ConnectionGUID":["3fCzMoFRTmCv8UF18kOWCg==","vzb7v9CDSVOxl1ucuMrV7Q=="],"X-CSE-MsgGUID":["A82UHJChTbiccojSCa1LXg==","bkdOizJIRgqj+5HLfvfWBg=="],"X-IronPort-AV":["E=McAfee;i=\"6800,10657,11760\"; a=\"76366289\"","E=Sophos;i=\"6.23,181,1770624000\"; d=\"scan'208\";a=\"76366289\"","E=Sophos;i=\"6.23,181,1770624000\"; d=\"scan'208\";a=\"230948002\""],"X-ExtLoop1":"1","ARC-Seal":"i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=SuuVmqHOeJGfsY7hAnsmbIBeXkF072H4MhGY2SmxQw7K2wXGxhHJM2joyqcunx2yN6d54JmEE3dX5ItyKPwQhmg1rlBa4T7Mi0rkmZdbt74LuH3V1SLMjzBa5ivnsdIfAT9VZzmemlOSq5Xmfu2zLnzNC64d9IkhIAtdMIDWuO7mfI82UuVa4qZ6z4L5QzUAaeUGm8y0XyAWCjwXA1xbXBSfGtmecNUiF8StVarf8rlLNCF4I8+28GH6RBERMGdduyGuYfDEYz0Rq0Q3jnwOfyqTTafcdIcMABJBQMWC38KGiNsQ+iCHzkFLowYjnIl6YBhyG1A59j2uUhu2OK8cqg==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=cDPf5RyN1LaUkFaXyWPMMCuUbTcJBwHEcedIqiWCBoY=;\n b=LBFEGMROF5pThB6g2G7+zZmsfQUMJ2W7gJGSDAJRi9oXhb2JcmJBfFwQmvCJ3N7mJkVZ8IeC047/nR0ZquD0XS9IosgcyqkiYdyGs71XaHWnC6fTAcs7BXAtYzXjzok2L0Xt5007MFNN7GQh0esIX5llygcygOLt6/k8ZHp6R8WZzVHmVCU95w1K4koLrSx5vhuSzouzVh6ney3VIl16up4jdXKacGitIyGxWuk9JYg+fgD986B7yxcWX77tNJrSgiPY+lkSW/LcciR7yyBcNjaLp5eZGLgz20rPrCZeUl+b/J7sWDjoE1w8CeQmOBdEW1Y7A6DvLflqJF85rwhfgQ==","ARC-Authentication-Results":"i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com;\n dkim=pass header.d=intel.com; arc=none","Date":"Thu, 16 Apr 2026 13:12:53 +0200","From":"Maciej Fijalkowski <maciej.fijalkowski@intel.com>","To":"<intel-wired-lan@lists.osuosl.org>","CC":"<netdev@vger.kernel.org>, <magnus.karlsson@intel.com>, <kuba@kernel.org>,\n <pabeni@redhat.com>, <horms@kernel.org>, <przemyslaw.kitszel@intel.com>,\n <jacob.e.keller@intel.com>","Message-ID":"<aeDENQXk8Mz1elXb@boxer>","References":"<20260414121405.631092-1-maciej.fijalkowski@intel.com>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Disposition":"inline","In-Reply-To":"<20260414121405.631092-1-maciej.fijalkowski@intel.com>","X-ClientProxiedBy":"TL0P290CA0011.ISRP290.PROD.OUTLOOK.COM\n (2603:1096:950:5::13) To DM4PR11MB6117.namprd11.prod.outlook.com\n (2603:10b6:8:b3::19)","MIME-Version":"1.0","X-MS-PublicTrafficType":"Email","X-MS-TrafficTypeDiagnostic":"DM4PR11MB6117:EE_|PH7PR11MB5818:EE_","X-MS-Office365-Filtering-Correlation-Id":"a5a782fb-e190-491a-4f65-08de9ba91fd4","X-MS-Exchange-SenderADCheck":"1","X-MS-Exchange-AntiSpam-Relay":"0","X-Microsoft-Antispam":"BCL:0;\n ARA:13230040|1800799024|366016|376014|18002099003|22082099003|56012099003;","X-Microsoft-Antispam-Message-Info":"\n wbmnWN6sDlUQy3BRBQyDO7aeGLkuA5LVkCH+9MHnj94w3/HJOkGKbGtvVCa6pxzUPIaX1BmuojJhoJmCn4oy4kmocmhI+Fd4w+uIeos8evpcHDHnbn9NJU0BO5OPyenNY05fsg/FTRpQJkx4Hmd1OkdrpWPfr+ZsGrz9i/dAJk6MYcMQ8L4zjMBbQfUuRMTsbrPK3GZAYc90khOGGjMcW8JOoVPKpmG2XU2OiPDSaotD1L9pS6i5wOjtcSU29BmPrar0q0RC51RgcbhOp+m2sWlG3QX0bbb7eeXeTBrBxHSX97Bt6vQl70oIeq3CSrqaft3DLwwzMhY8P3TgZFluUba8/Z6h2/ienjsWhdwseTKYHykXF9jxf9b/RzLwjTX5PT3H7Z4ziFDAGILEsmONZFtLV27v5hXNDpHXs7lupEaHL9JiM2oYaNVDZCv4mzIMv/i+vuGKN+pjHZwzGi3Updi8GtJaHeLXrJ9ObQCBkzikI0m6/JyvhUUQcyXi27Fs1eKdO9Hr+IxY1WFcn6F//4NVq7TPAQRrZzGwbId+ZeiKAaEp732G+/nbsLqvAOTvK4fM4aRN2FIm2/FBlm8J9E6cZjmtLDeqrAbtJLIAeB5bEgMbLOnfOKaOmcefN8e/ljfm4MPy4vMLg0FRy6DBf56qwrXjyDF0ZHFfL2csnaprJygwWCODGO8OWvciOKLaVl/iPbiqj1jbYx4iLa34Lu7iXvQ/SVSHrSpzEa4h4I/MLDxZIW4iJ3c/T20r10mk","X-Forefront-Antispam-Report":"CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:DM4PR11MB6117.namprd11.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230040)(1800799024)(366016)(376014)(18002099003)(22082099003)(56012099003);\n DIR:OUT; SFP:1101;","X-MS-Exchange-AntiSpam-MessageData-ChunkCount":"1","X-MS-Exchange-AntiSpam-MessageData-0":"\n DY6MVmYc5ajLiKlxg9wHKI77TJPnG9c+0+NNELqw9aYRkNyyheIsHu9YYzlXmxeYWoIQFx5Sh5JiHlFIzjxis3MN7Na/+tiNQ6jkPAX6/R7h2+kv1YtozVyiTMODaIGVDPC6wBEuj4jBO2k9AzcDsOtCd9PQ00HiMmcgXShnjqazc77hCCNxqvcPQ1bp0ksDqQDnynbTtTlU2x+aBVDAx2FjIvyz0kBwDtwA4Urq9NggKbYMGTVJV19xCD7XYoR+wNn0vhs1VBQ7neBKZoePTc+WHJ2YTq0PRo5QyfmOi48u7k1Pl+/2Zpu8KzhQvNlTAq2j1cc3D7p+8SBnVKeQajkl6Xd3pdJb2r/Ki53YKhx0rHCQvxyWinSMVSh3iwonCwMP+WN0/tkegFly1lPQWQj4jH6WspoMIzpZpKqYcg0D+xdcTXwx8kENFeugwalzG/m1lTHXo1i1Pwr5B7aMzgb1zNmabSZmf2la31Ahaogsq3aczazL+hl6RCWBTvYkWuX9zvnRiSF1/JJjp22gZCuRT6yllgUO6out0ruXmkD1f7oa4s7gHz5yJVkRcpA2ye9zf1XsNRCK/hOPcqNNqBUbho33seZ2vwenKc9htWw9ArwbFALIwCo12oJkLjMFYtJLKzzMGTC85nxmCj4Id37Lk7unJpxseBhJnWS9+SqwomlS29jm77way1O2UAMy2M3SKC0RYnWQeCTeWg559lTwgzgibH61mr3w3gs/xLLkcQxSbmvve3AMs4E294bBbz1/REhBVHBpA7CT6bCx4E/4aO+CzUriwEDfp6zLKJ2X2Hp6H7ev8+qyLnWceteNrubFV9W0i/kRiR509Bc1Yx9vqWobOtjtppHWgulKVzm/MP84R1FYWpIYFKiAKc/NsHarmRt9ABF/Y6wyLHWURZ7iFFDOYFvbROELCSL0XZxup6rL+PoU48FJ1JzNoDa4Pfm2wO4UFcuG9m2Wz8bTXGpGVZ1te+1kT3EAG2MDO6rSgNaoJMWXxTkCiRutaeYiejMMe+qDOKewZlU7WuKV/9F6BWof7FimFXw2Yro81nQ38/ortIXFcdLK1MoDP4fAvRIospHZR/cNQcfCmBNum0AFgKutJVJFZ0sIEM2QJidQWcQWg0dnVjluTUMcLKZOIme5QnwaEM+rY0ArVLtrkjXB09oWyuUmfEDY/ia4cyWW/kJry0VrhVcP1f0uJ286N7Z1PZoV1LSwzonA/pHK3QNT5ClPCZZl190on5Kwv/dv0hXdl58I3RcXtSi7qFdZB6M4QeFKz4oZwCzWoxslUDTaLlMzfhBSTx9/CqabMWj1VIr2gPEYDdb+x//ijO06IOgrG8PUR8dD5xoKwX2PwwZYXvfgvzxO9aoSIgDUKWJ0XlH+3Lhx+mQnYkJafOho9JnLUmBD8Z6Nq2vkATCBhQr8uC4mIxkGPvaind7hAlZG+MIIwgFn51fgSQVFk6ScOUo5hHbrA5srfAY1j4BVNk+OGe3jsmHivLcZ1V8o5cK3ikZq2hjxKc9upsjJnrJVgYuB8hZ4REJuvQobwrAJ/vyx2GXN8N0zZpB0KcZ+s2bK+foexFiEOYbVa9TaBuoPo8sQ5BNLkKFCQB3VTZm/qDY5lFsLQzUdCCjxSbK7BSoGGA6sKZVtx7rvsDgUiQZNewa65hqK/whv3phm2LSyX1N/R/2LBfbaVSY+gCqkS757zywPZgJrJxObThMnfd3Gqf0owehe/u9GDWUkNueVemoAvK5uJ8ofqR1P4NnT0QU=","X-Exchange-RoutingPolicyChecked":"\n c2XvotGXWm7z2JW3ITh+OPWz6jTFieOjT/w0JBfVmCtjta67iNVz/uvFFA3Q1JMb72nc4WepLiCp8cOYVBJ8twX6pYXHUlICIvWPUiXk3fg9JXaLJn1f171yeoEB20kdki08uY7iEQE7EsJFs/UxM5zlMkcHKlDr3OTrI0lRApSltHC/Wd04Fk/jjEGKsqFsgmP0Bmrdisk8URlFTXKxf150HERLD8gB9oX0QeHUE7EwuaG47g97We9AwL7fbpzK00kGGL5W8c+3lvljM3CAXFvy4ljkEEgSGkVXS8tOI0BdE7WpTK+EDXEmlEhTLnNdROq5H2e7O8/pSqJMvynHTA==","X-MS-Exchange-CrossTenant-Network-Message-Id":"\n a5a782fb-e190-491a-4f65-08de9ba91fd4","X-MS-Exchange-CrossTenant-AuthSource":"DM4PR11MB6117.namprd11.prod.outlook.com","X-MS-Exchange-CrossTenant-AuthAs":"Internal","X-MS-Exchange-CrossTenant-OriginalArrivalTime":"16 Apr 2026 11:13:02.4747 (UTC)","X-MS-Exchange-CrossTenant-FromEntityHeader":"Hosted","X-MS-Exchange-CrossTenant-Id":"46c98d88-e344-4ed4-8496-4ed7712e255d","X-MS-Exchange-CrossTenant-MailboxType":"HOSTED","X-MS-Exchange-CrossTenant-UserPrincipalName":"\n cbl/xgPzWbsUxTQ3UD+NsIu+h/m7PFufZhAP8Tvn2hDHjK2d9E5gFrK1Gzlns0ERBbgJWNFFuyTYG4Qw2ocZj5tmWWRIjuWPHeXdQRzZ6kY=","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"PH7PR11MB5818","X-OriginatorOrg":"intel.com","X-Mailman-Original-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1776338045; x=1807874045;\n h=date:from:to:cc:subject:message-id:references:\n in-reply-to:mime-version;\n bh=fG5Vfw13J/9oPhqCc8vNHsQqeRItOK7Xq1QKJkbJVJM=;\n b=JGvRsQNAE9cPsfVeqrKRau1ikRBpntIjbLtXkf+zoU+ufL28eVuFojbx\n iqT+C/SiNDyKpeOIKbhTLaCDVFexNgawB41OiZSRI2cK0NDSsZPXIHQ26\n QsihzTR27RtS4S+8WNIWvCrl3PN3DBXEFMpy+Rxd+ujtqppRFhoconf0a\n Tdy6TIAkojPWMZqJlcAhGPLGJ5YETbxyHqKsYXZSI1kdQvTQahYOkntDw\n Nnyvwy4Zu6wGXwZZFa1WDwx4LBldJRAyKGfSAH1VsE6gyDCXZDKyh5KDI\n Gt12z3kzQWg3Y4yXafYVlVx/nLsA3XA3MbT4Wf4vaJYPAVzfMtkkG5nXi\n Q==;","X-Mailman-Original-Authentication-Results":["smtp4.osuosl.org;\n dmarc=pass (p=none dis=none)\n header.from=intel.com","smtp4.osuosl.org;\n dkim=pass (2048-bit key,\n unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256\n header.s=Intel header.b=JGvRsQNA","dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=intel.com;"],"Subject":"Re: [Intel-wired-lan] [PATCH iwl-net] i40e: keep q_vectors array in\n sync with channel count changes","X-BeenThere":"intel-wired-lan@osuosl.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Intel Wired Ethernet Linux Kernel Driver Development\n <intel-wired-lan.osuosl.org>","List-Unsubscribe":"<https://lists.osuosl.org/mailman/options/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=unsubscribe>","List-Archive":"<http://lists.osuosl.org/pipermail/intel-wired-lan/>","List-Post":"<mailto:intel-wired-lan@osuosl.org>","List-Help":"<mailto:intel-wired-lan-request@osuosl.org?subject=help>","List-Subscribe":"<https://lists.osuosl.org/mailman/listinfo/intel-wired-lan>,\n <mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>","Errors-To":"intel-wired-lan-bounces@osuosl.org","Sender":"\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"}}]