Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.2/patches/2235028/?format=api
{ "id": 2235028, "url": "http://patchwork.ozlabs.org/api/1.2/patches/2235028/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20260508124208.11622-9-przemyslaw.kitszel@intel.com/", "project": { "id": 46, "url": "http://patchwork.ozlabs.org/api/1.2/projects/46/?format=api", "name": "Intel Wired Ethernet development", "link_name": "intel-wired-lan", "list_id": "intel-wired-lan.osuosl.org", "list_email": "intel-wired-lan@osuosl.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260508124208.11622-9-przemyslaw.kitszel@intel.com>", "list_archive_url": null, "date": "2026-05-08T12:42:01", "name": "[iwl-next,v1,08/15] iavf: extend iavf_configure_queues() to support more queues", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "31bc80a776dabfe6460934a8084e16a4e6e065d9", "submitter": { "id": 85252, "url": "http://patchwork.ozlabs.org/api/1.2/people/85252/?format=api", "name": "Przemek Kitszel", "email": "przemyslaw.kitszel@intel.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20260508124208.11622-9-przemyslaw.kitszel@intel.com/mbox/", "series": [ { "id": 503388, "url": "http://patchwork.ozlabs.org/api/1.2/series/503388/?format=api", "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=503388", "date": "2026-05-08T12:41:53", "name": "devlink, mlx5, iavf, ice: XLVF for iavf", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/503388/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2235028/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2235028/checks/", "tags": {}, "related": [], "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=CwbTnYmR;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=osuosl.org\n (client-ip=140.211.166.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 [140.211.166.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 4gBq385dxbz1yCg\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 08 May 2026 23:00:04 +1000 (AEST)", "from localhost (localhost [127.0.0.1])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id F3AD240E67;\n\tFri, 8 May 2026 12:59:57 +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 crjFYIsFzHkX; Fri, 8 May 2026 12:59:57 +0000 (UTC)", "from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp4.osuosl.org (Postfix) with ESMTP id 602B74100A;\n\tFri, 8 May 2026 12:59:57 +0000 (UTC)", "from smtp4.osuosl.org (smtp4.osuosl.org [IPv6:2605:bc80:3010::137])\n by lists1.osuosl.org (Postfix) with ESMTP id 04998317\n for <intel-wired-lan@lists.osuosl.org>; Fri, 8 May 2026 12:59:56 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n by smtp4.osuosl.org (Postfix) with ESMTP id 01DA940F62\n for <intel-wired-lan@lists.osuosl.org>; Fri, 8 May 2026 12:59:56 +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 c-U0S3UUaH4k for <intel-wired-lan@lists.osuosl.org>;\n Fri, 8 May 2026 12:59:55 +0000 (UTC)", "from mgamail.intel.com (mgamail.intel.com [198.175.65.17])\n by smtp4.osuosl.org (Postfix) with ESMTPS id 2D89841053\n for <intel-wired-lan@lists.osuosl.org>; Fri, 8 May 2026 12:59:55 +0000 (UTC)", "from fmviesa005.fm.intel.com ([10.60.135.145])\n by orvoesa109.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 08 May 2026 05:59:55 -0700", "from irvmail002.ir.intel.com ([10.43.11.120])\n by fmviesa005.fm.intel.com with ESMTP; 08 May 2026 05:59:49 -0700", "from vecna.igk.intel.com (vecna.igk.intel.com [10.123.220.17])\n by irvmail002.ir.intel.com (Postfix) with ESMTP id 7C8272FC44;\n Fri, 8 May 2026 13:59:47 +0100 (IST)" ], "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 602B74100A", "OpenDKIM Filter v2.11.0 smtp4.osuosl.org 2D89841053" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org;\n\ts=default; t=1778245197;\n\tbh=vbQw2y7v23UaXpxycIQfCM4aoDdmvIwGc+GKDcKE2YI=;\n\th=From:To:Cc:Date:In-Reply-To:References:Subject:List-Id:\n\t List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:\n\t From;\n\tb=CwbTnYmRIFDaq3UMFE6+b5yEfLYfzR94of4M7YPqlpoNggFqCSGLpzUJr0WNz1MUp\n\t b9EnCdD0BFIdnxzQ91oFQ3hb+Ud5m2jo97RtDre7lWj5yhR6hh+O74DLRWji+1aAvy\n\t TO+Jz+GLHvEXXOQShuTM3Ryi/3ZVEXv7kHDyGnQPBxwu30blzwSvkEEHQat0T2Epjq\n\t ko6zOeAFsfakmEIH6Ji4Ab4zNHgOAp8rR5lWdA1NiP1TzPdROVQiEUBj5PecB7HBnL\n\t rOqRbY+291w+1mhWfgko/R7GtiqkjsBKx/0XChmQtQcK7opfK1CYa1WN5psSmwdBqY\n\t oSap3ruDF+sqg==", "Received-SPF": "Pass (mailfrom) identity=mailfrom; client-ip=198.175.65.17;\n helo=mgamail.intel.com; envelope-from=przemyslaw.kitszel@intel.com;\n receiver=<UNKNOWN>", "DMARC-Filter": "OpenDMARC Filter v1.4.2 smtp4.osuosl.org 2D89841053", "X-CSE-ConnectionGUID": [ "UHMCuz7cSgesJFTuXRoZCA==", "swZOTk4ZQf2P85VUdshBQQ==" ], "X-CSE-MsgGUID": [ "NmEqXQpMQZOFgM8eFzzKpw==", "wubMeUzcSOiZStO1K992YA==" ], "X-IronPort-AV": [ "E=McAfee;i=\"6800,10657,11779\"; a=\"79199931\"", "E=Sophos;i=\"6.23,223,1770624000\"; d=\"scan'208\";a=\"79199931\"", "E=Sophos;i=\"6.23,223,1770624000\"; d=\"scan'208\";a=\"241730132\"" ], "X-ExtLoop1": "1", "From": "Przemek Kitszel <przemyslaw.kitszel@intel.com>", "To": "intel-wired-lan@lists.osuosl.org, Michal Schmidt <mschmidt@redhat.com>,\n Jakub Kicinski <kuba@kernel.org>, Jiri Pirko <jiri@resnulli.us>", "Cc": "netdev@vger.kernel.org, Simon Horman <horms@kernel.org>,\n Tony Nguyen <anthony.l.nguyen@intel.com>,\n Michal Swiatkowski <michal.swiatkowski@linux.intel.com>,\n bruce.richardson@intel.com,\n Vladimir Medvedkin <vladimir.medvedkin@intel.com>,\n padraig.j.connolly@intel.com, ananth.s@intel.com,\n timothy.miskell@intel.com, Jacob Keller <jacob.e.keller@intel.com>,\n Lukasz Czapnik <lukasz.czapnik@intel.com>,\n Aleksandr Loktionov <aleksandr.loktionov@intel.com>,\n Andrew Lunn <andrew+netdev@lunn.ch>,\n \"David S. Miller\" <davem@davemloft.net>,\n Eric Dumazet <edumazet@google.com>, Paolo Abeni <pabeni@redhat.com>,\n Saeed Mahameed <saeedm@nvidia.com>, Leon Romanovsky <leon@kernel.org>,\n Tariq Toukan <tariqt@nvidia.com>, Mark Bloch <mbloch@nvidia.com>,\n Przemek Kitszel <przemyslaw.kitszel@intel.com>", "Date": "Fri, 8 May 2026 14:42:01 +0200", "Message-Id": "<20260508124208.11622-9-przemyslaw.kitszel@intel.com>", "X-Mailer": "git-send-email 2.39.3", "In-Reply-To": "<20260508124208.11622-1-przemyslaw.kitszel@intel.com>", "References": "<20260508124208.11622-1-przemyslaw.kitszel@intel.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "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=1778245196; x=1809781196;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=MHtnV2d7on0QOsG7JkOnFzWyzfm4So4mltVlVNW1uq0=;\n b=a+xtx97B0IBzfliOEfHlRQ/jsAQSCEfFIY3vh8e2rzFhY16VFz+dpgmk\n CRCVzXfsBkCJi0edQbe03ocQ9IA2V7zt0iKQaSABfRo8r2AM6Equmrb3X\n BwxX0NmqmXhWE9Al+WYXCgH2f2Ru3x3FXKIhJWLBmWCdnkulY5LIfInGj\n bh2P+lvlgGOo6oLIL2QJt1/YVqQEVUkJdlL7xTHyZjlimVLHuZnkcwU1x\n Sv/MhVxN/ZmyxcUZ4FidpzkGsTVRQiYM1z8zLN5d4Zd7imWmFG4HhbcOZ\n dVTfpGhwfQ8+3/Hu0Nr+DfK8qjGnkwMZml+ROsdUrFSHXy7ExD4q2yvmh\n A==;", "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) header.d=intel.com header.i=@intel.com\n header.a=rsa-sha256 header.s=Intel header.b=a+xtx97B" ], "Subject": "[Intel-wired-lan] [PATCH iwl-next v1 08/15] iavf: extend\n iavf_configure_queues() to support more queues", "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>" }, "content": "Extend iavf_configure_queues() to support more than 31 queues.\nVirtchnl opcode used was already generic, but we have just not needed\nmore than one message before.\n\nAdd helper, iavf_max_vc_entries(), that determines how many entries we\ncould fit into virtchnl message (ending by flex array member). Will be\nalso used on another op later in this series.\n\nSigned-off-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>\n---\n .../net/ethernet/intel/iavf/iavf_virtchnl.c | 55 +++++++++++++++----\n 1 file changed, 45 insertions(+), 10 deletions(-)", "diff": "diff --git a/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c b/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c\nindex a2f75bb4a74e..7a97fc76420f 100644\n--- a/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c\n+++ b/drivers/net/ethernet/intel/iavf/iavf_virtchnl.c\n@@ -8,6 +8,11 @@\n #include \"iavf_ptp.h\"\n #include \"iavf_prototype.h\"\n \n+/* how many Flex Array Member entires do fit into VC message of type *ptr */\n+#define iavf_max_vc_entries(ptr, flex_member) \\\n+\t((IAVF_MAX_AQ_BUF_SIZE - virtchnl_struct_size(ptr, flex_member, 1)) / \\\n+\t sizeof(ptr->flex_member[0]) + 1)\n+\n /**\n * iavf_send_pf_msg\n * @adapter: adapter structure\n@@ -366,6 +371,14 @@ int iavf_get_vf_ptp_caps(struct iavf_adapter *adapter)\n \treturn err;\n }\n \n+static bool iavf_match_vc_op_cb(struct iavf_adapter *adapter, const void *data,\n+\t\t\t\tenum virtchnl_ops recv_op)\n+{\n+\tenum virtchnl_ops wanted_op = (enum virtchnl_ops)data;\n+\n+\treturn recv_op == wanted_op;\n+}\n+\n /**\n * iavf_configure_queues\n * @adapter: adapter structure\n@@ -377,8 +390,9 @@ void iavf_configure_queues(struct iavf_adapter *adapter)\n \tstruct virtchnl_vsi_queue_config_info *vqci;\n \tint pairs = adapter->num_active_queues;\n \tstruct virtchnl_queue_pair_info *vqpi;\n-\tu32 i, max_frame;\n \tu8 rx_flags = 0;\n+\tu32 max_frame;\n+\tint max_pairs;\n \tsize_t len;\n \n \tmax_frame = LIBIE_MAX_RX_FRM_LEN(adapter->rx_rings->pp->p.offset);\n@@ -390,22 +404,22 @@ void iavf_configure_queues(struct iavf_adapter *adapter)\n \t\t\tadapter->current_op);\n \t\treturn;\n \t}\n-\tadapter->current_op = VIRTCHNL_OP_CONFIG_VSI_QUEUES;\n-\tlen = virtchnl_struct_size(vqci, qpair, pairs);\n+\n+\tmax_pairs = iavf_max_vc_entries(vqci, qpair);\n+\tlen = virtchnl_struct_size(vqci, qpair, min(pairs, max_pairs));\n \tvqci = kzalloc(len, GFP_KERNEL);\n \tif (!vqci)\n \t\treturn;\n \n \tif (iavf_ptp_cap_supported(adapter, VIRTCHNL_1588_PTP_CAP_RX_TSTAMP))\n \t\trx_flags |= VIRTCHNL_PTP_RX_TSTAMP;\n \n \tvqci->vsi_id = adapter->vsi_res->vsi_id;\n-\tvqci->num_queue_pairs = pairs;\n \tvqpi = vqci->qpair;\n-\t/* Size check is not needed here - HW max is 16 queue pairs, and we\n-\t * can fit info for 31 of them into the AQ buffer before it overflows.\n-\t */\n-\tfor (i = 0; i < pairs; i++) {\n+\n+\tfor (int i = 0, in_msg = 0; i < pairs; i++) {\n+\t\tconst bool last = i + 1 == pairs;\n+\n \t\tvqpi->txq.vsi_id = vqci->vsi_id;\n \t\tvqpi->txq.queue_id = i;\n \t\tvqpi->txq.ring_len = adapter->tx_rings[i].count;\n@@ -423,11 +437,32 @@ void iavf_configure_queues(struct iavf_adapter *adapter)\n \t\t\t\t\t\t NETIF_F_RXFCS);\n \t\tvqpi->rxq.flags = rx_flags;\n \t\tvqpi++;\n+\t\tin_msg++;\n+\t\tif (last || in_msg == max_pairs) {\n+\t\t\tint err;\n+\n+\t\t\tadapter->current_op = VIRTCHNL_OP_CONFIG_VSI_QUEUES;\n+\t\t\tvqci->num_queue_pairs = in_msg;\n+\n+\t\t\tiavf_send_pf_msg(adapter,\n+\t\t\t\t\t VIRTCHNL_OP_CONFIG_VSI_QUEUES,\n+\t\t\t\t\t (u8 *)vqci,\n+\t\t\t\t\t virtchnl_struct_size(vqci, qpair, in_msg));\n+\t\t\terr = iavf_poll_virtchnl_response(adapter,\n+\t\t\t\t\t\t\t iavf_match_vc_op_cb,\n+\t\t\t\t\t\t\t (void *)VIRTCHNL_OP_CONFIG_VSI_QUEUES,\n+\t\t\t\t\t\t\t 1000);\n+\t\t\tif (err)\n+\t\t\t\tdev_warn(&adapter->pdev->dev,\n+\t\t\t\t\t \"config queues poll failed, err: %d\\n\",\n+\t\t\t\t\t err);\n+\n+\t\t\tvqpi = vqci->qpair;\n+\t\t\tin_msg = 0;\n+\t\t}\n \t}\n \n \tadapter->aq_required &= ~IAVF_FLAG_AQ_CONFIGURE_QUEUES;\n-\tiavf_send_pf_msg(adapter, VIRTCHNL_OP_CONFIG_VSI_QUEUES,\n-\t\t\t (u8 *)vqci, len);\n \tkfree(vqci);\n }\n \n", "prefixes": [ "iwl-next", "v1", "08/15" ] }