Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2196346/?format=api
{ "id": 2196346, "url": "http://patchwork.ozlabs.org/api/patches/2196346/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/patch/b45cefc3147c2c8446772dab0f53d030fb92406a.1770963150.git.abysamross@ibm.com/", "project": { "id": 14, "url": "http://patchwork.ozlabs.org/api/projects/14/?format=api", "name": "QEMU Development", "link_name": "qemu-devel", "list_id": "qemu-devel.nongnu.org", "list_email": "qemu-devel@nongnu.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<b45cefc3147c2c8446772dab0f53d030fb92406a.1770963150.git.abysamross@ibm.com>", "list_archive_url": null, "date": "2026-02-13T06:34:43", "name": "[v3] s390x/pci: prevent null pointer dereference during zpci hot unplug", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "06cb5a423f5b92cd8bd61c807569866b9cb8e921", "submitter": { "id": 92616, "url": "http://patchwork.ozlabs.org/api/people/92616/?format=api", "name": "Aby Sam Ross", "email": "abysamross@ibm.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/patch/b45cefc3147c2c8446772dab0f53d030fb92406a.1770963150.git.abysamross@ibm.com/mbox/", "series": [ { "id": 492102, "url": "http://patchwork.ozlabs.org/api/series/492102/?format=api", "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=492102", "date": "2026-02-13T06:34:43", "name": "[v3] s390x/pci: prevent null pointer dereference during zpci hot unplug", "version": 3, "mbox": "http://patchwork.ozlabs.org/series/492102/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2196346/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2196346/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>", "X-Original-To": "incoming@patchwork.ozlabs.org", "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256\n header.s=pp1 header.b=k6frwr3x;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)" ], "Received": [ "from lists.gnu.org (lists.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fCDT856DXz1xr1\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 14 Feb 2026 01:05:15 +1100 (AEDT)", "from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1vqtmK-0005Eo-EZ; Fri, 13 Feb 2026 09:04:16 -0500", "from eggs.gnu.org ([2001:470:142:3::10])\n by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <abysamross@ibm.com>)\n id 1vqmpI-0003zm-VP; Fri, 13 Feb 2026 01:38:53 -0500", "from mx0a-001b2d01.pphosted.com ([148.163.156.1])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <abysamross@ibm.com>)\n id 1vqmpG-0000eI-Kq; Fri, 13 Feb 2026 01:38:52 -0500", "from pps.filterd (m0353729.ppops.net [127.0.0.1])\n by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id\n 61CFw5r33988415; Fri, 13 Feb 2026 06:38:48 GMT", "from ppma11.dal12v.mail.ibm.com\n (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219])\n by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4c696whqpa-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n Fri, 13 Feb 2026 06:38:47 +0000 (GMT)", "from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1])\n by ppma11.dal12v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id\n 61D44p0J001815;\n Fri, 13 Feb 2026 06:38:46 GMT", "from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227])\n by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4c6je2dg73-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT);\n Fri, 13 Feb 2026 06:38:46 +0000", "from smtpav05.fra02v.mail.ibm.com (smtpav05.fra02v.mail.ibm.com\n [10.20.54.104])\n by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id\n 61D6cfoH61341970\n (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK);\n Fri, 13 Feb 2026 06:38:41 GMT", "from smtpav05.fra02v.mail.ibm.com (unknown [127.0.0.1])\n by IMSVA (Postfix) with ESMTP id BA19320076;\n Fri, 13 Feb 2026 06:38:41 +0000 (GMT)", "from smtpav05.fra02v.mail.ibm.com (unknown [127.0.0.1])\n by IMSVA (Postfix) with ESMTP id CD21120075;\n Fri, 13 Feb 2026 06:38:40 +0000 (GMT)", "from B02-B02RHL5-RH94-0370-9-114-17-225.pok.stglabs.ibm.com (unknown\n [9.114.17.225]) by smtpav05.fra02v.mail.ibm.com (Postfix) with ESMTP;\n Fri, 13 Feb 2026 06:38:40 +0000 (GMT)" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc\n :content-transfer-encoding:date:from:in-reply-to:message-id\n :mime-version:references:subject:to; s=pp1; bh=o01AsjMHpxCKCALaZ\n yjCRawxTKW1zed51+u1M3zBDsc=; b=k6frwr3xT5CKPNoRba/PJAYU2W25O+6Pq\n hSsfp01xvY3zTL3HflDbjidhs3u1HTVX0KUBm6OFgb52BGJgFrM3eV01rc7tDdpy\n wQiPxMSosQbJc7CkwSa1qFQ8V6hligx+TVpoUSc+m1Z+EApNOoytLJGRLClBBBo1\n +G9UOPfdWnrDxm1kGT40Iw5nr/tmbZiAnB6TLdUqvtP086bPQvvPC7/QVHvXldRr\n YqHLcWFwq7nYpAsYQGwtE9qzOLWSHva8iXNe6k+rXUgYRABfjIPVyQgCZ+MOEPnT\n ZHYpD+3VJqmDzYeVFn4T3u5ca849skaKoIrH2rYDz2bxCccXX6riA==", "From": "Aby Sam Ross <abysamross@ibm.com>", "To": "qemu-s390x@nongnu.org", "Cc": "qemu-devel@nongnu.org, Aby Sam Ross <abysamross@ibm.com>,\n Eric Farman <farman@linux.ibm.com>,\n Matthew Rosato <mjrosato@linux.ibm.com>,\n Farhan Ali <alifm@linux.ibm.com>, Halil Pasic <pasic@linux.ibm.com>", "Subject": "[PATCH v3] s390x/pci: prevent null pointer dereference during zpci\n hot unplug", "Date": "Fri, 13 Feb 2026 01:34:43 -0500", "Message-ID": "\n <b45cefc3147c2c8446772dab0f53d030fb92406a.1770963150.git.abysamross@ibm.com>", "X-Mailer": "git-send-email 2.52.0", "In-Reply-To": "<20260212202515.3ffa2a80.pasic@linux.ibm.com>", "References": "<20260212202515.3ffa2a80.pasic@linux.ibm.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-TM-AS-GCONF": "00", "X-Authority-Analysis": "v=2.4 cv=YeCwJgRf c=1 sm=1 tr=0 ts=698ec6f7 cx=c_pps\n a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17\n a=HzLeVaNsDn8A:10 a=VkNPw1HP01LnGYTKEx00:22 a=Mpw57Om8IfrbqaoTuvik:22\n a=GgsMoib0sEa3-_RKJdDe:22 a=VnNF1IyMAAAA:8 a=oz4qGxXyewAE73xyycUA:9", "X-Proofpoint-GUID": "SYK-FA5aTa05ryjLsBAlw_aivzE8YB1N", "X-Proofpoint-Spam-Details-Enc": "AW1haW4tMjYwMjEzMDA0NiBTYWx0ZWRfX0C2FzqeCOhvv\n JuecbfQ7zWU+jnYeM1zKWoNLis8q1eHhY9xGARQ9iAEZsCITmGdfsSymyimTJVQ8qdF7nPgt2cI\n atG818QjqWHJaWwqb5nF/TLsca8UGuVIqG+CRx3iLn3rewwFJ27wqd43iRgtaA8Qk8Zoup376LQ\n 8IeTEBNui7rJvEvZZHEgeFkGCWse+vnqkuKl6oWGYpGQc+/FeXQvj8GVJ+JesFIYFLPRc2zzBpr\n qiDSFGr74MoRrHD0MWZoWKKhRCvf7wH1U4tupRPJXc/9vNgRK+R+slS5VBNCvicfB0JYHAZyCvL\n ZPAlvVdH17mz9XoHhyMrcqTUm6uysDxO9dVvbhFEvjNiuyqXPH+LcZBjkAksJreb0xiBAsPq1qy\n SOZYwHvzzUtUVQIOFZn0RcTxyfAWKHWJ5YRNB+wBZKvQ4z2osHsrNZGa9Fz8jL5g/TLg1H+cj3y\n G/x1P5/QMHo6M26NgRw==", "X-Proofpoint-ORIG-GUID": "SYK-FA5aTa05ryjLsBAlw_aivzE8YB1N", "X-Proofpoint-Virus-Version": "vendor=baseguard\n engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49\n definitions=2026-02-13_01,2026-02-12_03,2025-10-01_01", "X-Proofpoint-Spam-Details": "rule=outbound_notspam policy=outbound score=0\n suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 phishscore=0\n priorityscore=1501 lowpriorityscore=0 clxscore=1015 impostorscore=0\n spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound\n adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000\n definitions=main-2602130046", "Received-SPF": "pass client-ip=148.163.156.1; envelope-from=abysamross@ibm.com;\n helo=mx0a-001b2d01.pphosted.com", "X-Spam_score_int": "-20", "X-Spam_score": "-2.1", "X-Spam_bar": "--", "X-Spam_report": "(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001,\n RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001,\n SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no", "X-Spam_action": "no action", "X-Mailman-Approved-At": "Fri, 13 Feb 2026 09:04:14 -0500", "X-BeenThere": "qemu-devel@nongnu.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "qemu development <qemu-devel.nongnu.org>", "List-Unsubscribe": "<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>", "List-Archive": "<https://lists.nongnu.org/archive/html/qemu-devel>", "List-Post": "<mailto:qemu-devel@nongnu.org>", "List-Help": "<mailto:qemu-devel-request@nongnu.org?subject=help>", "List-Subscribe": "<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>", "Errors-To": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org", "Sender": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org" }, "content": "vfio-pci hostdev realize during zpci hot plug fails (in `vfio_pci_realize()`)\nif the vfio group file in `/dev/vfio/` lacks appropriate permissions and the\nhostdev[/properties] addition doesn't reach the point where it could be\nassociated with previously added zpci device (in `s390_pcihost_plug()`).\nAs a result, zpci iommu pointer remains null. The zpci hot unplug following the\nfailed hostdev addition assumes zpci iommu pointer was assigned and tries to\nmake use of it to end the dma count resulting in a null pointer dereference.\nIn the non-hotplug scenario, `qdev_unplug()` for the zpci device is not called\nafter hostdev addition failure and this issue is not encountered.\n\nAll other uses of zpci iommu without null check happens after both the zpci and\nhostdev(pci) devices are plugged and are safe from null dereference.\n\nFixes: 37fa32de7073 (\"s390x/pci: Honor DMA limits set by vfio\")\n\nSigned-off-by: Aby Sam Ross <abysamross@ibm.com>\nAcked-by: Eric Farman <farman@linux.ibm.com>\nReviewed-by: Matthew Rosato <mjrosato@linux.ibm.com>\nReviewed-by: Farhan Ali <alifm@linux.ibm.com>\nSuggested-by: Halil Pasic <pasic@linux.ibm.com> \n---\nThank you, Eric, Matthew & Farhan for looking into this.\n\nv2:\nAdded subsystem name to the commit message.\nUpdated the `Fixes` tag to include the reference commit's message.\n\nv3:\nAdded a note about other uses of zpci iommu without null check in the\ndescription as suggested by Halil.\nMatthew verified the zpci iommu uses during v1 review.\n---\n hw/s390x/s390-pci-bus.c | 2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)", "diff": "diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c\nindex b438d63c44..3166b91c46 100644\n--- a/hw/s390x/s390-pci-bus.c\n+++ b/hw/s390x/s390-pci-bus.c\n@@ -1248,7 +1248,7 @@ static void s390_pcihost_unplug(HotplugHandler *hotplug_dev, DeviceState *dev,\n pbdev->fid = 0;\n QTAILQ_REMOVE(&s->zpci_devs, pbdev, link);\n g_hash_table_remove(s->zpci_table, &pbdev->idx);\n- if (pbdev->iommu->dma_limit) {\n+ if (pbdev->iommu && pbdev->iommu->dma_limit) {\n s390_pci_end_dma_count(s, pbdev->iommu->dma_limit);\n }\n qdev_unrealize(dev);\n", "prefixes": [ "v3" ] }