Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/139846/?format=api
https://patches.dpdk.org/api/patches/139846/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/cab74a8497db23e4f480a7dd5d702f3430395f9e.1714744628.git.anatoly.burakov@intel.com/", "project": { "id": 1, "url": "https://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<cab74a8497db23e4f480a7dd5d702f3430395f9e.1714744628.git.anatoly.burakov@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/cab74a8497db23e4f480a7dd5d702f3430395f9e.1714744628.git.anatoly.burakov@intel.com", "date": "2024-05-03T13:57:49", "name": "[v2,18/27] net/ixgbe/base: improve SWFW semaphore acquisition", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "20edab5faaa42f2363f149c3c355e03ae8403e01", "submitter": { "id": 4, "url": "https://patches.dpdk.org/api/people/4/?format=api", "name": "Burakov, Anatoly", "email": "anatoly.burakov@intel.com" }, "delegate": null, "mbox": "https://patches.dpdk.org/project/dpdk/patch/cab74a8497db23e4f480a7dd5d702f3430395f9e.1714744628.git.anatoly.burakov@intel.com/mbox/", "series": [ { "id": 31875, "url": "https://patches.dpdk.org/api/series/31875/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=31875", "date": "2024-05-03T13:57:31", "name": "Update IXGBE base driver", "version": 2, "mbox": "https://patches.dpdk.org/series/31875/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/139846/comments/", "check": "success", "checks": "https://patches.dpdk.org/api/patches/139846/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 7815A43F76;\n\tFri, 3 May 2024 16:00:25 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 4902C40E8A;\n\tFri, 3 May 2024 15:58:58 +0200 (CEST)", "from mgamail.intel.com (mgamail.intel.com [192.198.163.15])\n by mails.dpdk.org (Postfix) with ESMTP id 9FCE440E36\n for <dev@dpdk.org>; Fri, 3 May 2024 15:58:56 +0200 (CEST)", "from fmviesa002.fm.intel.com ([10.60.135.142])\n by fmvoesa109.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 03 May 2024 06:58:56 -0700", "from silpixa00401119.ir.intel.com ([10.55.129.167])\n by fmviesa002.fm.intel.com with ESMTP; 03 May 2024 06:58:55 -0700" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1714744736; x=1746280736;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=LXqj1lecBQynbyFGcuN9RQ1OZuHQzV0mtwblDvPYCpE=;\n b=O2khbIdqi3lCjNrGuF+s4u5h6f2mgmP4IpdcctDqvSjcK1AUFRGqPZs6\n oXOCHhKjvych0OyCMBRUelDhdQ65Gqp3dBQBktnjTwQ6yZ/twachMyz6k\n FW7enJUXYjnIgQWuSeA01s5XRxveyKg+JE21YhlR0i8fgb4sz0hujT1+T\n d/h9C0eboqsgfTdOns6l5Gpw0+ngeSwLaqWe8toAMymxQ7VkvFjHghsqy\n BO5bZIAoSMyFKsdsWIrfqYAxjOHsud89AE/ASniwXRcYU6tN6H2grf74l\n s+m2q/VoVTkeM76HjQr+82k843/4RuGWTUjTWoMDCWsW2TdlcQmUlorkC w==;", "X-CSE-ConnectionGUID": [ "0c5wTlYlSmKQ7WsuQHb+QQ==", "1l9q6+thTSy1F/dfDJO0FQ==" ], "X-CSE-MsgGUID": [ "zacCMXW0THC6JgJL9oJYZA==", "gKOnfA4ETny3NVTu+k4vhw==" ], "X-IronPort-AV": [ "E=McAfee;i=\"6600,9927,11063\"; a=\"10714961\"", "E=Sophos;i=\"6.07,251,1708416000\"; d=\"scan'208\";a=\"10714961\"", "E=Sophos;i=\"6.07,251,1708416000\"; d=\"scan'208\";a=\"50642037\"" ], "X-ExtLoop1": "1", "From": "Anatoly Burakov <anatoly.burakov@intel.com>", "To": "dev@dpdk.org", "Cc": "Barbara Skobiej <barbara.skobiej@intel.com>, bruce.richardson@intel.com,\n vladimir.medvedkin@intel.com", "Subject": "[PATCH v2 18/27] net/ixgbe/base: improve SWFW semaphore acquisition", "Date": "Fri, 3 May 2024 14:57:49 +0100", "Message-ID": "\n <cab74a8497db23e4f480a7dd5d702f3430395f9e.1714744628.git.anatoly.burakov@intel.com>", "X-Mailer": "git-send-email 2.43.0", "In-Reply-To": "<cover.1714744628.git.anatoly.burakov@intel.com>", "References": "<cover.1713964707.git.anatoly.burakov@intel.com>\n <cover.1714744628.git.anatoly.burakov@intel.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "From: Barbara Skobiej <barbara.skobiej@intel.com>\n\nHWSW semaphore acquisition in Atom C3000 NIC is a two stage process.\nEach time two semaphore acquisitions are required. Each second semaphore\nfailure require re-acquisition of first semaphore. This patch decouples\nthe two acquisitions preventing potentially hundreds of thousands\nof unnecessary loop iterations.\n\nSigned-off-by: Barbara Skobiej <barbara.skobiej@intel.com>\n---\n drivers/net/ixgbe/base/ixgbe_x550.c | 41 ++++++++++++++++-------------\n 1 file changed, 22 insertions(+), 19 deletions(-)", "diff": "diff --git a/drivers/net/ixgbe/base/ixgbe_x550.c b/drivers/net/ixgbe/base/ixgbe_x550.c\nindex 29055a818a..74c2563dd5 100644\n--- a/drivers/net/ixgbe/base/ixgbe_x550.c\n+++ b/drivers/net/ixgbe/base/ixgbe_x550.c\n@@ -4211,36 +4211,39 @@ STATIC s32 ixgbe_acquire_swfw_sync_X550a(struct ixgbe_hw *hw, u32 mask)\n \n \tDEBUGFUNC(\"ixgbe_acquire_swfw_sync_X550a\");\n \n+\tstatus = IXGBE_SUCCESS;\n+\tif (hmask)\n+\t\tstatus = ixgbe_acquire_swfw_sync_X540(hw, hmask);\n+\n+\tif (status) {\n+\t\tDEBUGOUT1(\"Could not acquire SWFW semaphore, Status = %d\\n\", status);\n+\t\treturn status;\n+\t}\n+\n+\tif (!(mask & IXGBE_GSSR_TOKEN_SM))\n+\t\treturn IXGBE_SUCCESS;\n+\n \twhile (--retries) {\n-\t\tstatus = IXGBE_SUCCESS;\n-\t\tif (hmask)\n-\t\t\tstatus = ixgbe_acquire_swfw_sync_X540(hw, hmask);\n-\t\tif (status) {\n-\t\t\tDEBUGOUT1(\"Could not acquire SWFW semaphore, Status = %d\\n\",\n-\t\t\t\t status);\n-\t\t\treturn status;\n-\t\t}\n-\t\tif (!(mask & IXGBE_GSSR_TOKEN_SM))\n-\t\t\treturn IXGBE_SUCCESS;\n-\n \t\tstatus = ixgbe_get_phy_token(hw);\n-\t\tif (status == IXGBE_ERR_TOKEN_RETRY)\n-\t\t\tDEBUGOUT1(\"Could not acquire PHY token, Status = %d\\n\",\n-\t\t\t\t status);\n \n \t\tif (status == IXGBE_SUCCESS)\n \t\t\treturn IXGBE_SUCCESS;\n \n-\t\tif (hmask)\n-\t\t\tixgbe_release_swfw_sync_X540(hw, hmask);\n-\n \t\tif (status != IXGBE_ERR_TOKEN_RETRY) {\n-\t\t\tDEBUGOUT1(\"Unable to retry acquiring the PHY token, Status = %d\\n\",\n-\t\t\t\t status);\n+\t\t\tDEBUGOUT1(\"Retry acquiring the PHY token failed, Status = %d\\n\", status);\n+\t\t\tif (hmask)\n+\t\t\t\tixgbe_release_swfw_sync_X540(hw, hmask);\n \t\t\treturn status;\n \t\t}\n+\n+\t\tif (status == IXGBE_ERR_TOKEN_RETRY)\n+\t\t\tDEBUGOUT1(\"Could not acquire PHY token, Status = %d\\n\",\n+\t\t\t\t status);\n \t}\n \n+\tif (hmask)\n+\t\tixgbe_release_swfw_sync_X540(hw, hmask);\n+\n \tDEBUGOUT1(\"Semaphore acquisition retries failed!: PHY ID = 0x%08X\\n\",\n \t\t hw->phy.id);\n \treturn status;\n", "prefixes": [ "v2", "18/27" ] }{ "id": 139846, "url": "