Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/139079/?format=api
http://patches.dpdk.org/api/patches/139079/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20240403115541.2369-1-julien.meunier@nokia.com/", "project": { "id": 1, "url": "http://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": "<20240403115541.2369-1-julien.meunier@nokia.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20240403115541.2369-1-julien.meunier@nokia.com", "date": "2024-04-03T11:55:41", "name": "net/fm10k: fix cleanup during init failure", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": false, "hash": "b9145811fafe15bfd7f5f2f7045cce8abcf42f6b", "submitter": { "id": 1125, "url": "http://patches.dpdk.org/api/people/1125/?format=api", "name": "Julien Meunier", "email": "julien.meunier@nokia.com" }, "delegate": { "id": 10, "url": "http://patches.dpdk.org/api/users/10/?format=api", "username": "bruce", "first_name": "Bruce", "last_name": "Richardson", "email": "bruce.richardson@intel.com" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20240403115541.2369-1-julien.meunier@nokia.com/mbox/", "series": [ { "id": 31666, "url": "http://patches.dpdk.org/api/series/31666/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=31666", "date": "2024-04-03T11:55:41", "name": "net/fm10k: fix cleanup during init failure", "version": 1, "mbox": "http://patches.dpdk.org/series/31666/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/139079/comments/", "check": "fail", "checks": "http://patches.dpdk.org/api/patches/139079/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 7E3F143DEB;\n\tWed, 3 Apr 2024 13:55:49 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 12684402CE;\n\tWed, 3 Apr 2024 13:55:49 +0200 (CEST)", "from EUR05-VI1-obe.outbound.protection.outlook.com\n (mail-vi1eur05on2115.outbound.protection.outlook.com [40.107.21.115])\n by mails.dpdk.org (Postfix) with ESMTP id 91D584025C;\n Wed, 3 Apr 2024 13:55:47 +0200 (CEST)", "from AS4PR07MB8707.eurprd07.prod.outlook.com (2603:10a6:20b:4f1::7)\n by DUZPR07MB9744.eurprd07.prod.outlook.com (2603:10a6:10:4d2::14)\n with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.46; Wed, 3 Apr\n 2024 11:55:45 +0000", "from AS4PR07MB8707.eurprd07.prod.outlook.com\n ([fe80::8265:50eb:82ba:6628]) by AS4PR07MB8707.eurprd07.prod.outlook.com\n ([fe80::8265:50eb:82ba:6628%6]) with mapi id 15.20.7409.042; Wed, 3 Apr 2024\n 11:55:45 +0000" ], "ARC-Seal": "i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;\n b=lezitjmiCm5DuGTfBydl519qz0xdo1YrBGMu6QYXE4Bh2sP7WsgsHvncHsU0mFqCFGYx4raoKsV0H/R1Y1otPuI88HOGVq8xM2qbJlH0bJk0lW1W6jjR9mh1QvI4JM9dQ7Jd7kGSuOSFaj7XF/8ltPizm18Ai7Tvb79Ret/eBXsiAWbhU0ZYMEPgSwyf0QQ7/BxTMmUPa991AyikmPL3fGJNmu6skSGvxDboU4bvVy1M9bge0vbghZb0oWnWulM1OE3N0Ytqr2XWXTHQmyPQug1TwhbSGdRzXCVxmW28/j6xyYh7MNf8pqroLDwdnjHRd2iENxdGOaRjA59iMjeP6g==", "ARC-Message-Signature": "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector9901;\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=JQ0sbb61qytG27HPFycVxfBpDcMKQlMj4wUtufgCxnI=;\n b=HY6CYmlXR3jyGwzAUUuJQLcm5OVEppegAdsrZmMTtnTQlN81vAG2X3wM3vx+5/EPjcsqbHKrsl3maYse5Y34zWJzgjvJ6z7hT8yBEAmlKJpRNP9Zda/9Q1++0h2YAiMmz/VI5Is2hPxKLNJZ+kcLMuKz7AVJt0eJgAAMvFH955vyeb1IOOb0qj660+xfzRuIt/iWzuF9MECoi/n2ZdXOf5ROla5MXm0eMylujix+2an0rURV5Qb2/O/nhoY5IskDD4KTxzZNhq5iABwOO5zDyoFtACa7Le7HJnbyXd0CA7P1CyzaRoj8uqABfqnLhM1Mm9Yx8o2XIa9MbOUVfsEZlg==", "ARC-Authentication-Results": "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com;\n dkim=pass header.d=nokia.com; arc=none", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=JQ0sbb61qytG27HPFycVxfBpDcMKQlMj4wUtufgCxnI=;\n b=tZwYqz0nc//k6vkcaYtl5Iq1zcrt/uZktEGjfuR/w3UYIrmk/HGR6kKLFZ54cmdYJPlEmpTbpSICaCfoA1taIE+sTXad7336ZyL15gVaInLLDyWxi5VO7yq+iL2YYMuhaQ2TRX9jh5nEWix587j/xILgQdL7ERgX/5ufymZqGLmn/kT/JDskAjDzILvFStSPiYHwJaObBE6NmfhWmrv15hD7TiAq2xYmIDKz85TBAlGtesp8JoXXBF1nspPorhVeXX2cl6wyW5L31FRCbqYYDo86T7qGuXDI9lrZoyKFFEyXxOLXzWs8kajfYLjqFwdE7YTw5roL1BVVTh/8fYCwYg==", "From": "Julien Meunier <julien.meunier@nokia.com>", "To": "Jing Chen <jing.d.chen@intel.com>, Jeff Shaw <jeffrey.b.shaw@intel.com>,\n Michael Qiu <qiudayu@chinac.com>", "Cc": "dev@dpdk.org,\n\tstable@dpdk.org", "Subject": "[PATCH] net/fm10k: fix cleanup during init failure", "Date": "Wed, 3 Apr 2024 13:55:41 +0200", "Message-Id": "<20240403115541.2369-1-julien.meunier@nokia.com>", "X-Mailer": "git-send-email 2.34.1", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-ClientProxiedBy": "GVYP280CA0003.SWEP280.PROD.OUTLOOK.COM\n (2603:10a6:150:fa::18) To AS4PR07MB8707.eurprd07.prod.outlook.com\n (2603:10a6:20b:4f1::7)", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "AS4PR07MB8707:EE_|DUZPR07MB9744:EE_", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "BCL:0;", "X-Microsoft-Antispam-Message-Info": "\n lmS0ZS6jBgZBS20hLk+Ld6FnH12yaAShQ36z8OiYTYIOWkJsxuOE+2Ij0pQofLZvRh+1AoAJrpCeQRpqWU86keplqnUYn4cFI5g5NLU9PdZnT60Banm29Ate79rewPElJFGakcMhM6YC6rL+5AvZ88Pfj7l16/x3qXn5lK6iTlOxubJMgAtJuM5d8I7Giaf+4594d4u+TVvBXnq+bVzmZPaS4YPkqG2nJYjg9Cb0jvZS+6k8+m96m901Ca/cX7XGTPqdVijnoaDXywBMyZHj46qye/9egCdZNBelNGyB1R3ytJHaFlzUXbk16l0Gdd4BtqDVw5uPESCQ6ghssPOOKGhqnPKD1OeETGJXy0zXxcU+JnrgWLJ/xNHkVIAEOgzHJNpFlaRncUbCLb4sJvyAlFzGV2wEm1LP6c+bv29345FOib9pEvEBN4284xOrcL/VAyLFMKnk7QVmJryI1TnYvuVwclX/pU0WNZ0gwKGyWPcpoXk8BakkyXKXRhD+PfpOTakhAY5KfF6DYXTEzc6BaiPAqZ+LVxyznu73I2qELgNS2V7m6BMCuRMJPHx1HOF2J6pdZgqS4eM0+Q0DGp9TgRiEsP3MoXHpQ0O2XKn60oSK1rlChbNheNpWUKacJGTYHD6r1pu43d6FNBpW5koydRcISGt0nBu+937aN82fo9U=", "X-Forefront-Antispam-Report": "CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;\n IPV:NLI; SFV:NSPM; H:AS4PR07MB8707.eurprd07.prod.outlook.com; PTR:; CAT:NONE;\n SFS:(13230031)(366007)(1800799015)(376005); DIR:OUT; SFP:1102;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "\n cLFHnDurrhtKnnlFOMVH2vbwSVv4zD7t21Ia/UM1t2nb+JeVjspBIJAt6WvzhYIFw//pGQUgkEAG6XA2AtjabB8ery/wHyoIkxFuoQWnG+3ax5WyasqYUJkWG5wbQI4fhmy0U/zjQWitZ5zhBCY4kRT/pSOEZ10H2oy2hT99i375siRSbsyyj2OcRfNkYBl41/y7dVZnONBDVJHhqGYzLypZ8pS0rZ95rDe/Nby27hOun1yT62VJfL3/c6IJ7rrLwoNbXHnRDDtlt+1MGBXghu75m9ekztcktSv7hlXMg2h+df2mL04wP6A747rtZdl3hyG3hIokGLK5Tv56LlDf+m5v1exLzVy9q6TxtmQV65AaI8BXHD1SyZCg2wplyL4vU7zYQkd3hcLiRpEhajQvCd7AhFHJo8b+kuqHIDDezqBqDgQ896UnmqQ38EHXsf8RWtdCG7jS3HO4X+HBovCtsFKJNpeg2QijwrFTPqQRu4C3NmOaYtCSGsK7m2YnX+O540/R5KlrYVPZCsyTxgIn/wpa2fU22pV5AwMO5sMS/7Lzls8VGFWCNvWAT4aiMZKpiqhiyx8BRWBvKxkq8k4HO1mqycI+HQ/5SBYQfU0G7mu9I/MiLDvOZ83Ub00Vq3Kve5jXSa0u5ClsFg904U7P5ny1daWe87tJtTR2hJ4fyOjGxZUn3w0CLkeDu4PCv0NRE3nRTOcmrYqaozWKB+Pa22K/r5k2xe07D0+7SFOXB1q5MtlBSR/I76pztT2NZz+mveaNZyd9G5x2jn663oDaAy6vI5rSrjAu8UxRo0MQXWMj77xJN3e2mZ1xbmIG2YBoDhZFKCG7rRlh/xUxQYbGa4WuzJFWe0rE61VmfkolHvCCD+CemgQ3WQnWi9fCJJz/eDwjbXn4tUpkd0Wr4a9AQ5Queyk1pDv3RjwOorTvDLFbcb+MEpdVrQXdoEej80CsQBmNdMcbyFKKC18jctQIiuZrT2OmUiyu6iigMhogV0l87I0YoKceN7k7iUVboGXfJquYr5s3ma5xqn3xeG2qjkp2e3C9xwK+E+xYS+t8XcHFvQ2VQlDHgdOCp9oegZjCj0zbMb0pdfDziVxHNJVHclNZfcAHowrAjk+w9rmj+qUTnIoNd6FfPOlP6NpQI/MuChuBU3AI4/nTs3WKjdmkX3wD+p2snWTZM9zW1gu0bOdQxH3Wlqx/6HhBSH0wizPFoVy9d/+eG7eDTOKZ+8VwstzPw9XjjfkqxMQ6ygqN+OnKQFStKBXFZHSMH94I9aiYvyuMVGbZ+CpC0UtJCyhc6LoEDG/2iRrthLzdbqj5zMiCRi6g9xBA22eHBuyzrlTACM0VkpaWokuIcRgfL09d05GWIGYCjS+N9fNHDfo/PpqYjq9TnTBNkp6/fASkh9vDOmE/CCuYdxbq83/+fI027Z/ezMIogT9lO3+cWM88zU4jpT3gBdWYNxhQrJygv9myGHx6bDY4KC3TuQiw+X9D9wws6bRmhBJOZW2qzbMqnaTidyzPYAOmPGmhp/WEiQAxB49OZO1ZTXtgPB76BBnqQo5CVsXA/xsWzvHmJt3VajyL53F47kLU0OWqs+CS9arpqOJoe7P7gk7BxMg64pPffw==", "X-OriginatorOrg": "nokia.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 5ce0fff0-3ed5-4e24-ddfe-08dc53d4fe81", "X-MS-Exchange-CrossTenant-AuthSource": "AS4PR07MB8707.eurprd07.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "03 Apr 2024 11:55:44.9737 (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "5d471751-9675-428d-917b-70f44f9630b0", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n yPrDbluzMp5168UagE9Aqm07Wo+wl7qhu6VxvX3LDkg3Uh1i1zYn79nIsFIwduMX7wx50e9nAJrm3aJP3on6kTrhakaRcJBRakEBkvAoZj8=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "DUZPR07MB9744", "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": "Cleanup was not done on this PMD if a error is seen during the init:\n- possible memory leak due to a missing free\n- interrupt handler was not disabled: if an IRQ is received after the\n init, a SIGSEGV can be seen (private data stored in\n rte_eth_devices[port_id] is pointing to NULL)\n\nFixes: a6061d9e7075 (\"fm10k: register PF driver\")\nFixes: 4c287332c39a (\"fm10k: add PF and VF interrupt handling\")\nCc: stable@dpdk.org\n\nSigned-off-by: Julien Meunier <julien.meunier@nokia.com>\n---\n drivers/net/fm10k/fm10k_ethdev.c | 39 +++++++++++++++++++++++++++-----\n 1 file changed, 33 insertions(+), 6 deletions(-)", "diff": "diff --git a/drivers/net/fm10k/fm10k_ethdev.c b/drivers/net/fm10k/fm10k_ethdev.c\nindex fa0d16277e..7b490bea17 100644\n--- a/drivers/net/fm10k/fm10k_ethdev.c\n+++ b/drivers/net/fm10k/fm10k_ethdev.c\n@@ -3058,7 +3058,7 @@ eth_fm10k_dev_init(struct rte_eth_dev *dev)\n \tstruct fm10k_hw *hw = FM10K_DEV_PRIVATE_TO_HW(dev->data->dev_private);\n \tstruct rte_pci_device *pdev = RTE_ETH_DEV_TO_PCI(dev);\n \tstruct rte_intr_handle *intr_handle = pdev->intr_handle;\n-\tint diag, i;\n+\tint diag, i, ret;\n \tstruct fm10k_macvlan_filter_info *macvlan;\n \n \tPMD_INIT_FUNC_TRACE();\n@@ -3147,21 +3147,24 @@ eth_fm10k_dev_init(struct rte_eth_dev *dev)\n \tdiag = fm10k_stats_reset(dev);\n \tif (diag != 0) {\n \t\tPMD_INIT_LOG(ERR, \"Stats reset failed: %d\", diag);\n-\t\treturn diag;\n+\t\tret = diag;\n+\t\tgoto err_stat;\n \t}\n \n \t/* Reset the hw */\n \tdiag = fm10k_reset_hw(hw);\n \tif (diag != FM10K_SUCCESS) {\n \t\tPMD_INIT_LOG(ERR, \"Hardware reset failed: %d\", diag);\n-\t\treturn -EIO;\n+\t\tret = -EIO;\n+\t\tgoto err_reset_hw;\n \t}\n \n \t/* Setup mailbox service */\n \tdiag = fm10k_setup_mbx_service(hw);\n \tif (diag != FM10K_SUCCESS) {\n \t\tPMD_INIT_LOG(ERR, \"Failed to setup mailbox: %d\", diag);\n-\t\treturn -EIO;\n+\t\tret = -EIO;\n+\t\tgoto err_mbx;\n \t}\n \n \t/*PF/VF has different interrupt handling mechanism */\n@@ -3200,7 +3203,8 @@ eth_fm10k_dev_init(struct rte_eth_dev *dev)\n \n \t\tif (switch_ready == false) {\n \t\t\tPMD_INIT_LOG(ERR, \"switch is not ready\");\n-\t\t\treturn -1;\n+\t\t\tret = -1;\n+\t\t\tgoto err_switch_ready;\n \t\t}\n \t}\n \n@@ -3235,7 +3239,8 @@ eth_fm10k_dev_init(struct rte_eth_dev *dev)\n \n \t\tif (!hw->mac.default_vid) {\n \t\t\tPMD_INIT_LOG(ERR, \"default VID is not ready\");\n-\t\t\treturn -1;\n+\t\t\tret = -1;\n+\t\t\tgoto err_vid;\n \t\t}\n \t}\n \n@@ -3244,6 +3249,28 @@ eth_fm10k_dev_init(struct rte_eth_dev *dev)\n \t\tMAIN_VSI_POOL_NUMBER);\n \n \treturn 0;\n+\n+err_vid:\n+err_switch_ready:\n+\trte_intr_disable(intr_handle);\n+\n+\tif (hw->mac.type == fm10k_mac_pf) {\n+\t\tfm10k_dev_disable_intr_pf(dev);\n+\t\trte_intr_callback_unregister(intr_handle,\n+\t\t\tfm10k_dev_interrupt_handler_pf, (void *)dev);\n+\t} else {\n+\t\tfm10k_dev_disable_intr_vf(dev);\n+\t\trte_intr_callback_unregister(intr_handle,\n+\t\t\tfm10k_dev_interrupt_handler_vf, (void *)dev);\n+\t}\n+\n+err_mbx:\n+err_reset_hw:\n+err_stat:\n+\trte_free(dev->data->mac_addrs);\n+\tdev->data->mac_addrs = NULL;\n+\n+\treturn ret;\n }\n \n static int\n", "prefixes": [] }{ "id": 139079, "url": "