Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/1.1/patches/2229070/?format=api
{ "id": 2229070, "url": "http://patchwork.ozlabs.org/api/1.1/patches/2229070/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-pci/patch/20260427175302.570671-1-mahesh.vaidya@altera.com/", "project": { "id": 28, "url": "http://patchwork.ozlabs.org/api/1.1/projects/28/?format=api", "name": "Linux PCI development", "link_name": "linux-pci", "list_id": "linux-pci.vger.kernel.org", "list_email": "linux-pci@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null }, "msgid": "<20260427175302.570671-1-mahesh.vaidya@altera.com>", "date": "2026-04-27T17:53:02", "name": "PCI: altera: Fix resource leaks on probe failure", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "dfe77ba600fe7eab17031b3623fa67b451c8387e", "submitter": { "id": 92067, "url": "http://patchwork.ozlabs.org/api/1.1/people/92067/?format=api", "name": "Mahesh Vaidya", "email": "mahesh.vaidya@altera.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-pci/patch/20260427175302.570671-1-mahesh.vaidya@altera.com/mbox/", "series": [ { "id": 501698, "url": "http://patchwork.ozlabs.org/api/1.1/series/501698/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-pci/list/?series=501698", "date": "2026-04-27T17:53:02", "name": "PCI: altera: Fix resource leaks on probe failure", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/501698/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2229070/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2229070/checks/", "tags": {}, "headers": { "Return-Path": "\n <linux-pci+bounces-53237-incoming=patchwork.ozlabs.org@vger.kernel.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linux-pci@vger.kernel.org" ], "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=altera.com header.i=@altera.com header.a=rsa-sha256\n header.s=selector2 header.b=sTrGgXOM;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c0a:e001:db::12fc:5321; helo=sea.lore.kernel.org;\n envelope-from=linux-pci+bounces-53237-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)", "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com\n header.b=\"sTrGgXOM\"", "smtp.subspace.kernel.org;\n arc=fail smtp.client-ip=52.101.56.21", "smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=altera.com", "smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=altera.com", "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=altera.com;" ], "Received": [ "from sea.lore.kernel.org (sea.lore.kernel.org\n [IPv6:2600:3c0a:e001:db::12fc:5321])\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 4g4B5M3rS9z1yHv\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 28 Apr 2026 03:53:59 +1000 (AEST)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 5CE4C3023518\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 27 Apr 2026 17:53:24 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 32BC230E829;\n\tMon, 27 Apr 2026 17:53:23 +0000 (UTC)", "from BN1PR04CU002.outbound.protection.outlook.com\n (mail-eastus2azon11010021.outbound.protection.outlook.com [52.101.56.21])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 856E4364EA4;\n\tMon, 27 Apr 2026 17:53:21 +0000 (UTC)", "from SA1PR03MB6498.namprd03.prod.outlook.com (2603:10b6:806:1c5::7)\n by CH7PR03MB7785.namprd03.prod.outlook.com (2603:10b6:610:24f::8) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9846.26; Mon, 27 Apr\n 2026 17:53:17 +0000", "from SA1PR03MB6498.namprd03.prod.outlook.com\n ([fe80::feea:da58:faeb:9ebc]) by SA1PR03MB6498.namprd03.prod.outlook.com\n ([fe80::feea:da58:faeb:9ebc%4]) with mapi id 15.20.9846.025; Mon, 27 Apr 2026\n 17:53:17 +0000" ], "ARC-Seal": [ "i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1777312403; cv=fail;\n b=OKmoHymxqtmlJVrfn4ROTiF6S0Z0LB9pOJ37EDgFYAVzWn2omQCSJ5l4a77yXXufHRSuestwavFurZW2yhxOunuOh2OTqI/0ih7ds9rXCY1BZPKD2VfevNZ2ppbw4vlmMz4Qy3LBfBYy212I7w86DBMKmUewo6SNK7i/9kDem+A=", "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=gH2lFfitse24NMexf02hTh7GHwh9JYGwakmBa7gnHCa3acfumBckkphz1ggIBVVuf4cZIdNzVHcKdZj/QCO+Wb+jEI6lH/zTlvr/JCkAsNaablNJWKykXlGRGDtqV1hF4GCH1IW2ybvHrEHznLZGP1yhcSJUCjzV6HC6w7zEhRYJPxchmYxcTmG3fXg8M86SdWofM2c+xUvSqMr4E+iUqSUp5xW3jAoG2m25ciCrkqp1KyKShzXWouD5VzUir2pOqOEr7mmqks+ckTgl3jmRJSC1t4V/AtFk2UnjPkISlKBl46/lQMEF/D2UQnglV5BPJj/jZbCHwcZWVYgM507WJQ==" ], "ARC-Message-Signature": [ "i=2; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1777312403; c=relaxed/simple;\n\tbh=tH9KC/TGCIq5rP8Dut/9CdDocjGCwVvb2v2isVNlByw=;\n\th=From:To:Cc:Subject:Date:Message-Id:Content-Type:MIME-Version;\n b=oHns2SHPC9z9jNvb/lqjwPSCG66iI+z3uSM2k1jsUtQBqOqcrNqHT5LojWTzcno0aTDsLx8A2N58kYU986cK8Od+l9xHhcXGrlMEBtbHqDDcC0jpYNgPUqEHqqRMpMoIWNQ/Kq1HZWB4BFS3I0nqp5TJAmOFn0ZgLCne1MWnzw8=", "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=d656+IBRHCC9v3A6/hXVTAvRqGUGREA+E+p+KijAyUs=;\n b=JARtU1w2sWzU+hUisJXF3dmc2gAsPqXRYZpl6uFeyEJQvqNbxXmQKERUr75iXjTXfF22ID/66zijumuJXOhWRDu/RUrL52avD+I1D0RfA/+Ra6xh6xxnFtuqKM/GTX75sx9V+KYdM+a5PaXsnVLmsIvzmWoGC0V9Jzgwq8GiRrh/jM1kRrOt+0warc9nKxUVlXvrjuMSstcHREXSAh48o5Cbf+FgotCrtjsSsfd6OeLY7pGMZJ61HS5/ZIuBLXctZMJnrqttTW3x3a0wrETfSX0Q5BjJEVE7+qJFAeaGVqpoEgTLhiVpvE4jz1Tfjeqmd8TlmenryUaAuTW6cIw4sA==" ], "ARC-Authentication-Results": [ "i=2; smtp.subspace.kernel.org;\n dmarc=pass (p=reject dis=none) header.from=altera.com;\n spf=pass smtp.mailfrom=altera.com;\n dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com\n header.b=sTrGgXOM; arc=fail smtp.client-ip=52.101.56.21", "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com;\n dkim=pass header.d=altera.com; arc=none" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com;\n s=selector2;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=d656+IBRHCC9v3A6/hXVTAvRqGUGREA+E+p+KijAyUs=;\n b=sTrGgXOMtSV9vZPqnahJaZ2aNY97esXj3EJT4rskBi0hvgTqvIOktIHcPS5YGDGDGVCYhXIJonOMt+yYoLN4JiWFcAEmSuSN+b0L1l7tPqHoJd08k7hA+Q89dA2qWN/5uUff0AXThVeScFXSwB+/GYb9IJb4w01UGOmqjjUOXKcv5ohG1b2lYMKSYDXPqa+ljmjXOgbhSFtYKG1zCvfeNrxE+TImuk+kgQkO/o3RSpSjTb6/sQ1MZGbKTzAnPcHDuo8uZdSbAcinRdQPzkQlaQyOnCcwEQYWPxGjNWryd4CwtKdFOHpDJlmPOyX6UNTv0/ITh0fCsA73khgy4FoAKg==", "From": "Mahesh Vaidya <mahesh.vaidya@altera.com>", "To": "joyce.ooi@intel.com,\n\tlpieralisi@kernel.org,\n\tkwilczynski@kernel.org,\n\tmani@kernel.org,\n\trobh@kernel.org,\n\tbhelgaas@google.com,\n\tley.foon.tan@intel.com", "Cc": "linux-pci@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org,\n\tstable@vger.kernel.org,\n\tsubhransu.sekhar.prusty@altera.com,\n\tMahesh Vaidya <mahesh.vaidya@altera.com>", "Subject": "[PATCH] PCI: altera: Fix resource leaks on probe failure", "Date": "Mon, 27 Apr 2026 10:53:02 -0700", "Message-Id": "<20260427175302.570671-1-mahesh.vaidya@altera.com>", "X-Mailer": "git-send-email 2.34.1", "Content-Transfer-Encoding": "8bit", "Content-Type": "text/plain", "X-ClientProxiedBy": "SI2PR01CA0052.apcprd01.prod.exchangelabs.com\n (2603:1096:4:193::11) To SA1PR03MB6498.namprd03.prod.outlook.com\n (2603:10b6:806:1c5::7)", "Precedence": "bulk", "X-Mailing-List": "linux-pci@vger.kernel.org", "List-Id": "<linux-pci.vger.kernel.org>", "List-Subscribe": "<mailto:linux-pci+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:linux-pci+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "SA1PR03MB6498:EE_|CH7PR03MB7785:EE_", "X-MS-Office365-Filtering-Correlation-Id": "99f031d3-c7b1-43f1-cc6b-08dea485dc3e", "X-MS-Exchange-AtpMessageProperties": "SA", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "\n\tBCL:0;ARA:13230040|366016|1800799024|376014|7416014|18002099003|56012099003|55112099003;", "X-Microsoft-Antispam-Message-Info": "\n\tKjFBDKsf98Sz2U3Xh0KByxQIxWJ2T+pCtpyr+b3+r8xvn7jynTEB1BBoIESgGG6a2kngSQc01fuwPSldoO1XLvZT3hphv662r5eJD3IF5eHIQTvdDnwXXNUB8+dxOE72acp8LeG+pgFgFoh0eehsPadJcHoJrbs/t9sVxxLv4tB3iE/W5YbbL6LpPyEtmG7rPPGs8CQEZxmG8jXcAqVvzklETxWyUGFKQ78QvqUhJTGEsesHp2ZfZisoNVnbwrhqsQblDgyoTDQESF3Wq2laqDFihigHoPQZJZIGGBzOs3717ZXzJcu3deONAIXIA7Oh8GHpDCeB4r05ljMPNg+VnrAByQXj0f16JkQWRNhvETD4bE4PGcSr3XCCnYB3HuvFFmIe/YeMFTlSvGnHBTgnhvfMDJlZLmAKqTDNxTdaOTYQhL9h8/njAtvpyi64kuimp+hDydxj6NpeVtB79kRLBh0DO5deZ6edntmxsNB9D6Y9IiVWMoTBl9f8JBVbHL7SUJinqnoAxWvYlqP8WihJV59Mc4DSbozg99v2dMyfbngzRLOqVRIN5RzIZJ27YGXbLqS2FXml26GA7PGefoeV6lEeOWPq4j9ax24m6lUJEukAhMhy//SVcnOhj6wif8rQNQLg9tjJqx3IEZkB5Znl70jcns0vF8WIvt9LemFyuYsmjW550+GO3kOFG0Xb+rR3XQ9pk3ep9YTAliIuJOA76UapasZDpV1v2ke2iwXsBiQ=", "X-Forefront-Antispam-Report": "\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SA1PR03MB6498.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(7416014)(18002099003)(56012099003)(55112099003);DIR:OUT;SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "\n EX74bxf9K7zcUtL8ttleUvxLcYeylx9B2DffFnQzc8m5YHCIzr7/AMqOMQ1ktzJD5zziMI9zo+dyYCNLbEUXJCBY2QJKNR3WREl7MtgI2R/b0HqAWROwTPWjGX6GiGgMA06S2VtuqSj+Hd+QjboHJbyfUMDUzGhlnVx0QyrCCyTXps77WLCufus0UgDm9SedPPWXtoytVSuotB5dkmaTja+IbRaTtLlwvK1MH+/+zr0yeS0ocK7bOnfuzJOJCm1u9dhtps/qN8LTwpEsM8ILELmS2KdKUrSRPRd811iBKOtiLsBuAel4DSNvuzIKvTYNPhFFP6zf2zt7S5rOixabVcx63/fJGt4jW9eaXH3RAoHmWWQcnCa4cJFsHG8DRkclxAluNjHLgVVkWareCco800UK32XEcbadhq71Oa08SG9bFZIf0epnEtJwTOng78DVVb6lbqEck3z28Eu5i4C5p+Bh0188O+BMo+XkKsJgOPLTEuHop/3PRaXC2Z/OqNTnWALzuKdFKkGRHvwd6e4Z4Amd15nAzcFUrtwQMFPdkahCWa2IrII7663yxqoo+uRnprg0pmzr9qXa1NbUFHuA5iZxgppOw1jQ+fVB4s8Ie67aEH/N1BWeOxe1qaN9n/cCBDVQKRsqc0HTUMpEjon3ZzSJ7tt9bU3VAeQva3llClsDyydkzdwZXNBH0jJoBylZJkcUWABpzAq7i2VXCRMlps2J0goIpVFjCuP7w+qYRWbm7HXfwXI2Es6btTSxfVS1+yetzAJ9K1/pco5Om/qs2sZaxR8BBzb6ow8ajfGFJpOfvXGs4lSs81y0BKQs6SZbdXw3+7tCoH3pKh2WcU4z+QF+COX9O51n3f5j8Aer4u6C5tjExXjreyBZ1wMcRIFI5R6xRARNG/AuE0oWUqval2KIUMNCYEmXttO50h51ldE6xExpU8WLAhIXeUNbR0OKWHNZr+BfOvjpICCbzj/70HBKuYL/Cvd4B7kjTrL73Dg/Sfz834iGVx+USyRszAo+44XR3zns4yHMH6l38Mp9YJqMqe7IwRS0vSck9Zn5QOFR7EdX9Ws6dO78xvTs6lRlVwthiFlx2Ygfvp3zP2w/2pcBelZGGWsLxUu+RyFfx4EAkjSWQNueD+Dgpw7RHmFreC3lQQrJhOsn1hBFCZ7Hqi1P8MrixqznwnrN9TRXt5vsSvJafi7O0Vi0hTQPvCQBDp7MYIJGmQIbjcKtGFHiKbJwqKhJZxYOM3mFWwsiwAmOWE5pus36oBqqw/E9pokE2iA4BXrigRjrGnNeklmOrx9dIqFZ+VLKz63y89lY8j/oVmBS9bLZArPdQ9q+JMwCDzIQVoI0wl6O7Em7V5mhFFBM56R5zxcE4JaiX9Y9epWpYgqoxLFW5rvt2c8tgNk5CW75dFIuIBPLOhE6NXXUO4Lq8Sa801aQMvE/BD3y7oEyuLeiqa7KIulbtnyb09w+CuQVboAf6hOQ3UJyM0yGovzA8QhBcdf0F+v0WC5xxBvl7DbIvoaTd9Q5C9u2DTIJD8Hjdg3Hw6j9eTxMgGyvni7Blvg574GaSRDy8f8letg4HPNG1lYBDKd90WrrMDvITiLg0tihrFK0FCXUxesmdU2RwMD2DDM5mIKsBbRjUi379YpmIdzw+Tp+iDdYqTDiD39Qey472WFeoIiu3asHYIOzzao69IfEFQsmZONq8OxyPfq8AfQsgnsXsY7OFG3Yi2s5m2Qa42QVhGad+K30xk8Ism8wobpFVH46eVzESwQ=", "X-OriginatorOrg": "altera.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 99f031d3-c7b1-43f1-cc6b-08dea485dc3e", "X-MS-Exchange-CrossTenant-AuthSource": "SA1PR03MB6498.namprd03.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "27 Apr 2026 17:53:16.9504\n (UTC)", "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted", "X-MS-Exchange-CrossTenant-Id": "fbd72e03-d4a5-4110-adce-614d51f2077a", "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED", "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n TmuN56xhdjSMsmWv0/yQzaJ44nWBaAPn5wauLkoNoHoYfXE0hzAI4XMKdLllT/8Ly56dFyUdJHk02XzMYU/nwrG2nhTq1QJhnLrugkAfOR0=", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "CH7PR03MB7785" }, "content": "The chained IRQ handler is installed during probe but is only\nremoved from the remove path. If pci_host_probe() fails, the\nhandler and INTx IRQ domain remain installed even though\ndevm-managed probe data is released, leaving the handler with\na stale data pointer.\n\nInstall the chained handler only after the INTx domain is\ncreated, and tear both down if pci_host_probe() fails.\n\nFixes: c63aed7334c2 (\"PCI: altera: Use pci_host_probe() to register host\")\nCc: stable@vger.kernel.org\nSigned-off-by: Mahesh Vaidya <mahesh.vaidya@altera.com>\n---\n drivers/pci/controller/pcie-altera.c | 20 ++++++++++++++++++--\n 1 file changed, 18 insertions(+), 2 deletions(-)\n\n\nbase-commit: 4224e91fea5695a89843b4c38283016616946307", "diff": "diff --git a/drivers/pci/controller/pcie-altera.c b/drivers/pci/controller/pcie-altera.c\nindex 3dbb7adc421c..a18e287b8614 100644\n--- a/drivers/pci/controller/pcie-altera.c\n+++ b/drivers/pci/controller/pcie-altera.c\n@@ -891,7 +891,6 @@ static int altera_pcie_parse_dt(struct altera_pcie *pcie)\n \tif (pcie->irq < 0)\n \t\treturn pcie->irq;\n \n-\tirq_set_chained_handler_and_data(pcie->irq, pcie->pcie_data->ops->rp_isr, pcie);\n \treturn 0;\n }\n \n@@ -1020,6 +1019,14 @@ static int altera_pcie_probe(struct platform_device *pdev)\n \t\treturn ret;\n \t}\n \n+\t/*\n+\t * The chained handler uses pcie->irq_domain, so install it\n+\t * only after the INTx domain has been created.\n+\t */\n+\tirq_set_chained_handler_and_data(pcie->irq,\n+\t\t\t\t\t pcie->pcie_data->ops->rp_isr,\n+\t\t\t\t\t pcie);\n+\n \tif (pcie->pcie_data->version == ALTERA_PCIE_V1 ||\n \t pcie->pcie_data->version == ALTERA_PCIE_V2) {\n \t\t/* clear all interrupts */\n@@ -1037,7 +1044,16 @@ static int altera_pcie_probe(struct platform_device *pdev)\n \tbridge->busnr = pcie->root_bus_nr;\n \tbridge->ops = &altera_pcie_ops;\n \n-\treturn pci_host_probe(bridge);\n+\tret = pci_host_probe(bridge);\n+\tif (ret)\n+\t\tgoto err_teardown_irq;\n+\n+\treturn 0;\n+\n+err_teardown_irq:\n+\taltera_pcie_irq_teardown(pcie);\n+\n+\treturn ret;\n }\n \n static void altera_pcie_remove(struct platform_device *pdev)\n", "prefixes": [] }