From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781949; cv=none; d=zohomail.com; s=zohoarc; b=A806fmDZQd77+/NPvYgx3Ius1ka/0p+PjmsVYqtPWcjAYzgL36vsli6nXNGaUbUYP8a6BjgPMd1RkDTzY56+2dWdd0p/AXCJDlJRnBuC5lLyZRW22TtG18+VCDSJXmxvFJdUx9cP9DD1M8GwborGKGBQwwrSyRCb2+vSdeae7AI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781949; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=TRK0BKErCtNVoD7TvP6+q+2IsWkUDt53dP0K7/PMcFU=; b=FxudCwyfRlOKFdufzEQ1o5d1+HZc3xhMZw6zLXbBQqYKpInzsyDF4FJVTPIB2QSWz0eEh4v6senEh1yIHdLFOgnBavmKLSgZHZTK+sVVN0xH3dYAfgrSpJcCRih1PmOoF3Onduzuo0TwPcbtm0m0LG85nHvDWfads8fWg5TK5Uw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781949388129.66159298817047; Wed, 30 Sep 2026 08:25:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAY-0008Bj-Is; Wed, 30 Sep 2026 11:24:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAW-00089Z-KP; Wed, 30 Sep 2026 11:24:28 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAU-0001yz-TH; Wed, 30 Sep 2026 11:24:28 -0400 Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5J3d3170634; Wed, 30 Sep 2026 15:24:25 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5s5dtqv-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:24 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE38nA2287796; Wed, 30 Sep 2026 15:24:24 GMT Received: from smtprelay01.wdc07v.mail.ibm.com ([172.16.1.68]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0q4pb3j3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:23 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay01.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOMcM000868 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:22 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 202E45805A; Wed, 30 Sep 2026 15:24:22 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 919EA58051; Wed, 30 Sep 2026 15:24:21 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:21 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=TRK0BKErCtNVoD7Tv P6+q+2IsWkUDt53dP0K7/PMcFU=; b=InZpM0VoWO/3jw/SF5+8jQZHYegN5g8pY Ape5eZHHTfNAM/FVOm+Y21FMrwPtJAYzWN0uSpBSMTQlvZEEY3SYckxZl0UTnOpt O4DhpNaT+2PldPnTyQQJLcAr2N6Z2otbpPegzL3LAjx6CFEZ3dFlnRO9q0cHPMUg yi7P8g0tOX9efYST9qmCpUpl1A4lmyhriPKGbIalqnrhjlvcrtpaNULAu3WF7T5w CHwX5roqu18Hbkkwr3jBpNs0/PAa1WLV0iS3QTehP2bVj4bW4sWVy5VPau3rGjzY I09PbhombKYNYO03TYTKhLnaD/rYNXg8MxVbBNAeiiXrG0yWbFWig== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman , qemu-stable@nongnu.org Subject: [PULL 01/23] virtio-ccw: Limit ISC to MAX_ISC Date: Wed, 30 Sep 2026 11:23:58 -0400 Message-ID: <20260930152420.1956230-2-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX4agOkTCPrmFa E08SHSErDfdhVkBFfv/M91Q9YqPSo/XhHEryTvYzEUUPss3zxTR+29vRhU+bbrMYtilUoSjH3D4 D36Jqe2V++sn8iLBNqNEx8egIkC/NjI= X-Authority-Analysis: v=2.4 cv=HJ5WhYtv c=1 sm=1 tr=0 ts=6abd29a8 cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=o2FE-jkhVZ_mc2e-VYYA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-GUID: 282tYkktETkbfkC8sMAgpM0Tbne0nAli X-Proofpoint-ORIG-GUID: 282tYkktETkbfkC8sMAgpM0Tbne0nAli X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX3DsWHQRtqnP5 SDlmSQZ5ZLoPBIExdfuMnSnxyMPf1pofFJHkeLOO/Pea/gnUullHx6s/MU4ePzOPDDVFL55Omr/ wlZJXe7jrrLy4z9OKvu6Jj0iyR6Ayv6rWwz0dD0y4P6GlJbYjOu+Ub/EfM2G6hmE+n4JTTQlMfF HlCJ+X/BmptXBDl73AOX2+A5LEIabqPIEQblumW8jt73gK+1tpKx9jk/lNRCvAztMYr8rr4GPvx F+QqKE7rf8FV9gHsOvgoc9bLKeBgDgoB9C2bMrYaCL7fhuQ61WrMZxfYfPZH9Pny9Ul1JYux/qC LAqcWN91T1ZzIrAnLylMapUCZgRgw4cQrzBLubRILi7TQ7ajoOj55k0DN7k440wUCqDGSynLJqj TlwVRpZcCEIeLLjH7BhilFCBwhwFzU2O4XX3a/rgHvECyG4ToKbXyT8yZvYf2mUodiko/120gSJ w7FW0lFxVEU9MMViL5Q== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 suspectscore=0 bulkscore=0 clxscore=1015 lowpriorityscore=0 spamscore=0 impostorscore=0 phishscore=0 priorityscore=1501 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781951094158500 Content-Type: text/plain; charset="utf-8" The interrupt subclass is often defined as a uint8, though in practice it will be within the range of just 0-7. Ensure that a guest-supplied subclass does not extend beyond its expected range, especially when used as an array index. Cc: qemu-stable@nongnu.org Fixes: 25a08b8ded ("s390x/css: update css_adapter_interrupt") Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-2-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/s390x/css.c | 7 ++++++- hw/s390x/virtio-ccw.c | 6 ++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/hw/s390x/css.c b/hw/s390x/css.c index 76dbca3bb9..9da9128d88 100644 --- a/hw/s390x/css.c +++ b/hw/s390x/css.c @@ -654,8 +654,13 @@ void css_adapter_interrupt(CssIoAdapterType type, uint= 8_t isc) S390FLICState *fs =3D s390_get_flic(); S390FLICStateClass *fsc =3D s390_get_flic_class(fs); uint32_t io_int_word =3D (isc << 27) | IO_INT_WORD_AI; - IoAdapter *adapter =3D channel_subsys.io_adapters[type][isc]; + IoAdapter *adapter; + + if (type >=3D CSS_IO_ADAPTER_TYPE_NUMS || isc > MAX_ISC) { + return; + } =20 + adapter =3D channel_subsys.io_adapters[type][isc]; if (!adapter) { return; } diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c index 30fb2c0681..eb6378ea4c 100644 --- a/hw/s390x/virtio-ccw.c +++ b/hw/s390x/virtio-ccw.c @@ -46,6 +46,10 @@ static int virtio_ccw_dev_post_load(void *opaque, int ve= rsion_id) CcwDevice *ccw_dev =3D CCW_DEVICE(dev); CCWDeviceClass *ck =3D CCW_DEVICE_GET_CLASS(ccw_dev); =20 + if (dev->thinint_isc > MAX_ISC) { + return -EINVAL; + } + ccw_dev->sch->driver_data =3D dev; if (ccw_dev->sch->thinint_active) { dev->routes.adapter.adapter_id =3D css_get_adapter_id( @@ -659,6 +663,8 @@ static int virtio_ccw_cb(SubchDev *sch, CCW1 ccw) } else { if (ccw_dstream_read(&sch->cds, thinint)) { ret =3D -EFAULT; + } else if (thinint.isc > MAX_ISC) { + ret =3D -ENOSYS; } else { thinint.ind_bit =3D be64_to_cpu(thinint.ind_bit); thinint.summary_indicator =3D --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781954; cv=none; d=zohomail.com; s=zohoarc; b=gUi1m0055x3JR4i4D2lwJO1SHQRX6+KdyGAP85bbD+QI8yHGc+I8AZiRgQswIldB32DzcShbkzuskQbgYEqiLBxysXzL3QcQYjCrQLVsidX1jUlAWrLgLsp7xUTYVEthFebqMSajwOBUKuFv7SeqRgeubIb5Ms36cnYQ0A4mUIY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781954; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=xQte5zo4vzgO1k/oQKeZkMOmir2JVajJlABNQfzE8T4=; b=OEa0EDQm6KVP0a8v6pCWOQtxj/02h1MAMFPxZF8JU/4Q+9fMYMj8LVUJK8QQMtgjEEfsUkdceceZZniqIGKegQpqjjfVtxzJuB6pW6PrOmaqipZB1WhvpRSPHUZi9spVWdZQFxy48MLcxXUq6ew2D8Hb3kYbLJYc+umrXqaBt58= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781954394125.9556195440656; Wed, 30 Sep 2026 08:25:54 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAa-0008E9-9i; Wed, 30 Sep 2026 11:24:32 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAX-00089t-9n; Wed, 30 Sep 2026 11:24:29 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAV-0001z4-13; Wed, 30 Sep 2026 11:24:29 -0400 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5mob1933223; Wed, 30 Sep 2026 15:24:25 GMT Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx4fecyef-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE3BXD3577012; Wed, 30 Sep 2026 15:24:24 GMT Received: from smtprelay01.wdc07v.mail.ibm.com ([172.16.1.68]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0j23m9km-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:24 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay01.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOMoP1901374 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:23 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B250F5805E; Wed, 30 Sep 2026 15:24:22 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 34BCA58051; Wed, 30 Sep 2026 15:24:22 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:22 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=xQte5zo4vzgO1k/oQ KeZkMOmir2JVajJlABNQfzE8T4=; b=KZtn3NijDX/dEZzVkE5M54AINYslHAoE1 yKWg9CMxyVttyTOOS0mDSlV9M702zRVfHtrC+lN9F+yf++gT/rlResFd0BiaGIUZ 0PqXdqkyFJtNoC3RUBnibRpQ7SJMbapuvDQmyB8gGhpCJniCAMIhROz+Iv7FZ5+J 9W8NY/3d1WHFfGJSLeP5nyHuUDCSVbsEBPdv/fwXiYlUnoLa5w7fRBMj3NnnJxcI roZ70qHH3V7JyHT6DDL6WDZs3Acn0pQssACZq8FjXcSsK9zt95hlF5e8+vhfOUdq +F+J96ZO+YfZPXN3tRYqJ8a/W3o9kr6zQV/3M1I26q5Pt+iCYr5SQ== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman , qemu-stable@nongnu.org Subject: [PULL 02/23] virtio-ccw: Do not overwrite existing indicators Date: Wed, 30 Sep 2026 11:23:59 -0400 Message-ID: <20260930152420.1956230-3-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=FYWiV5+6 c=1 sm=1 tr=0 ts=6abd29a9 cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=smRGcg3zAD8wOz9YheIA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXy5sp7tPNcOSA daKVd0bso2H8nARDqDaQz/qUu2lGxhejM3qV8vTbXx5tLNBBSzcc38nFR+N1x/EzLR1dN2Y74TW EdGglz6cXjEEiWkvbd80R93E56yoUoI= X-Proofpoint-ORIG-GUID: tbsCeXnERMzRuJkMWWnQ7YiDJv6yuddv X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXzVx6ckcGq0qt pPPbtnQ3UZdZp+uuRM2lgl/8Wv9HRVJpTpsdpgIdjoVvc4R/B//TZMUhDxRW9Mo+HQdTcrV0p5n RNRBqGbk9WBM9Yu//+RRDGi6a4WzaPDSaH/vtWXmgDEDKXQb02rBbTAztOsnxssgiGb6U8SZ6hD dXOLxqfBiG064jRUXna8S0YaGsoMqb3zNVlc5r9IYFxYqffmSN7wGhhecjcPrUn1vGT+xQmR1Zo pFBjmKCj1f4B71ShohsMFke2EbzqpxhPNIGOowWNY5ZPWJOLdLh8e7x8ezPs/mXp6UHDnwtbQ7i Xzw4SOE/Jb6x7PWx0DezG8cus9+dWATDN0UyjIM3UxJlwDiGfz+oqNlrinN9khYx81fY5e7YP7F QQiuG/7Y0d1tB5poCciBxzB2bbTtS41ovRUt4S7P/jJRa1aCQlcu4lFQ+7+GieXpyxkDb2vE1SG Z6F/jOsk28o783jKhRA== X-Proofpoint-GUID: tbsCeXnERMzRuJkMWWnQ7YiDJv6yuddv X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 impostorscore=0 spamscore=0 phishscore=0 priorityscore=1501 malwarescore=0 bulkscore=0 lowpriorityscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781955195158500 Content-Type: text/plain; charset="utf-8" The various indicators pointers allow them to be overwritten, but leak any existing structs that might be there. If indicators exist, ensure that they are released before setting the new ones. Both the regular and adapter interrupt paths check that they aren't being asked to enable interrupts when the other one is enabled, so just do this release once all the potential checks are completed. Cc: qemu-stable@nongnu.org Fixes: 7bca3892cb ("s390x/virtio-ccw: reference-counted indicators") Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-3-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/s390x/virtio-ccw.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c index eb6378ea4c..f46f936150 100644 --- a/hw/s390x/virtio-ccw.c +++ b/hw/s390x/virtio-ccw.c @@ -582,6 +582,11 @@ static int virtio_ccw_cb(SubchDev *sch, CCW1 ccw) if (ret) { break; } + if (dev->indicators) { + /* Need to remove existing indicators first */ + release_indicator(&dev->routes.adapter, dev->indicators); + dev->indicators =3D NULL; + } indicators =3D be64_to_cpu(indicators); dev->indicators =3D get_indicator(indicators, sizeof(uint64_t)= ); sch->curr_status.scsw.count =3D ccw.count - sizeof(indicators); @@ -606,6 +611,11 @@ static int virtio_ccw_cb(SubchDev *sch, CCW1 ccw) if (ret) { break; } + if (dev->indicators2) { + /* Need to remove existing indicators first */ + release_indicator(&dev->routes.adapter, dev->indicators2); + dev->indicators2 =3D NULL; + } indicators =3D be64_to_cpu(indicators); dev->indicators2 =3D get_indicator(indicators, sizeof(uint64_t= )); sch->curr_status.scsw.count =3D ccw.count - sizeof(indicators); @@ -666,6 +676,17 @@ static int virtio_ccw_cb(SubchDev *sch, CCW1 ccw) } else if (thinint.isc > MAX_ISC) { ret =3D -ENOSYS; } else { + if (dev->indicators) { + /* Need to remove existing indicators first */ + release_indicator(&dev->routes.adapter, dev->indicator= s); + dev->indicators =3D NULL; + } + if (dev->summary_indicator) { + /* Need to remove existing indicators first */ + release_indicator(&dev->routes.adapter, + dev->summary_indicator); + dev->summary_indicator =3D NULL; + } thinint.ind_bit =3D be64_to_cpu(thinint.ind_bit); thinint.summary_indicator =3D be64_to_cpu(thinint.summary_indicator); --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782002; cv=none; d=zohomail.com; s=zohoarc; b=eC1eR525wEXm0IhtRER4DekR81HhxB9X3eHIVSX2k+N/b9EvA+0CiSaKT8OwKstY0YR3/lQ4AoIV1SNdyr9fTCkvc2a2e4g0sm4oQ4EKM4/Og+LrrFRNZ/o8tZ1q1xa0vqM7VL5kBnejNSRJhB2m74puOW3WMS3KHB1BkShchzY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782002; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=tXKNRgTTq7jtJMm/Mr6igQPo0Bq+NyCO+YrZawOK9jc=; b=f4Hdc5CiCHzZw/ElanxD4K7O2GS8V2SNcePLkKLlI/Y5QFxTZ5FkPJMAnPWE3PbWlv/jJ28bnvSjHeqLZjTynKmrZPIk+VzCHkg318vDO325qClYl9BipY48XMRDEsxS1BKjc8bsBqAJ9ld4qU+74fk5gv0WKujHjMG20S3WLhA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782002865346.16583498545583; Wed, 30 Sep 2026 08:26:42 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAb-0008Fn-Gn; Wed, 30 Sep 2026 11:24:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAX-00089w-D1; Wed, 30 Sep 2026 11:24:29 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAV-0001z9-KB; Wed, 30 Sep 2026 11:24:29 -0400 Received: from pps.filterd (m0360083.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5NIr3203128; Wed, 30 Sep 2026 15:24:25 GMT Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5j5dyjr-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE34AD3605823; Wed, 30 Sep 2026 15:24:24 GMT Received: from smtprelay03.dal12v.mail.ibm.com ([172.16.1.5]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gxsvhq2ew-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:24 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay03.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFONeA17695364 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:23 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 457555805A; Wed, 30 Sep 2026 15:24:23 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id CE0FF5805F; Wed, 30 Sep 2026 15:24:22 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:22 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=tXKNRgTTq7jtJMm/M r6igQPo0Bq+NyCO+YrZawOK9jc=; b=FZQGyp4Yt3sM/zvGBkPGbC2G4kBXp13nx D92bViHFqq2wRBipnkMlvsQY8pdIz+xcfntDq4sP7CKrC17ZrhGKLpy1ZOtGyyJC 1lS5cswakOPFSBDbD8vGY++cZignnUMem04Yb1qWAktW2JDA9ylsgpGYxlrpgeED XUXqrz+42pQpuNaYpMCD/MHXxKzFK+urIIwZHdlGkky0YSEX46uA0NLHDTeeZiEI Yn/zqzSiMFuwbX7M8t1XKcY6ou2nHLrYguvl9JLE4FjTY8MkwZytExwicXIKagT5 bWxbP/vl99M4zND09Ldv503HqOqDg6A5G44jbTOWC0+QzmWwTKm/g== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman , qemu-stable@nongnu.org Subject: [PULL 03/23] virtio-ccw: Fix rc check in read configuration path Date: Wed, 30 Sep 2026 11:24:00 -0400 Message-ID: <20260930152420.1956230-4-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX0h+Zcsldd2H5 RXzzjRlWpzVo2z5npbrFSE4Lq9qVNgAZkPrJR7LQTPscpTx2YOMd6I1TFh0xcO4NIIe0RQndM7H FZTLr2vxywtbgCNMZk67r4hi4tlSI9A= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX5wFGrSgJBnX2 Qe4DZXY8Vo5HmlkPttSpMKyyoc6fGzHb4U9weUoJryCPK02Ooisv0BIL8iS1m/sizWkkLOSkG+7 +7vUXNquD/1iVMu48Esz6ZVGOxBvjsVx5QDbDXm/YjYe9IRFzAeESGV57iTjpPVa1pAbUAamlOg 3YMR8387KgMtAO8jdeS7Sf12IUT/PMU3q4e2rhobzLix9gtWVztVN7Vit+XZ465wA4AjDxMhwWP jDgGnMNFprRCuKkbxH55jx43HsnmS4pd180VcxD2iG2AimJc4D7BYWjtt9TwUXRr4KWXYxcVl2e n3/RAl9nwbuco5ylOXMKoMRfPaFRkvzRIxEmquwJpYsyw2a3BXzAqNbomBYiU0RMN0zF4CyREc2 YUBaUyOTDTGWNCqGubX4KNfrAymj3vrvFr367Bcz/6tP9Btzyr+4ssQ8h2LSuyA4vAjtm0zTo4Y zeCa6KL8qiZInAMbQ6g== X-Proofpoint-GUID: 53vPhlCWXERcKELjfLD0fvDBMMB7KCGV X-Authority-Analysis: v=2.4 cv=RKcmjIi+ c=1 sm=1 tr=0 ts=6abd29a9 cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=iQ6ETzBq9ecOQQE5vZCe:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=uiMiztMkydEs4ieJCJEA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-ORIG-GUID: 53vPhlCWXERcKELjfLD0fvDBMMB7KCGV X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 priorityscore=1501 spamscore=0 bulkscore=0 impostorscore=0 adultscore=0 lowpriorityscore=0 suspectscore=0 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782003423158500 Content-Type: text/plain; charset="utf-8" Both the read and write config paths use wrappers around cds->op_handler, depending on the direction the I/O is flowing. But they expect opposite values in the returned variable to indicate success. Fix this by unifying those checks, where CCW_CMD_READ_CONF needs to see !ret as success. The end result is some erroneous data in the SCSW response data, but the overall success/failure is correct. Cc: qemu-stable@nongnu.org Fixes: d895d25ae2 ("s390x: css: report errors from ccw_dstream_read/write") Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-4-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/s390x/virtio-ccw.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c index f46f936150..11441e56c1 100644 --- a/hw/s390x/virtio-ccw.c +++ b/hw/s390x/virtio-ccw.c @@ -475,7 +475,7 @@ static int virtio_ccw_cb(SubchDev *sch, CCW1 ccw) } else { virtio_bus_get_vdev_config(&dev->bus, vdev->config); ret =3D ccw_dstream_write_buf(&sch->cds, vdev->config, len); - if (ret) { + if (!ret) { sch->curr_status.scsw.count =3D ccw.count - len; } } --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782022; cv=none; d=zohomail.com; s=zohoarc; b=T9RZacXdIfomPgz/4HlY7Pv8+Ft0RjhdZeYZrGEiC/jyrARKkC6n8mtIWWzG/FrXsziUV7JH3fBXKPzbIwn52rdpZjclh2Wz1L6ZkGinjvxHltQaGa6UqEXWoD/C5PwIeOiL7TKbSk8Ab3/Z6HK0ISnqYuCLUGSYh0/95XpiL8Q= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782022; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HFyJXEbp2yaL+lYztZKDi+2mf0MpDuNKqlCgIbTDzv8=; b=j6KoQE5MQsxFcI6GbFNxVU/DQPUt/Lz8oX3jX5HdC93HunesmHJp0yRrBbQ4tc7JMgXDcf4/HR4XQw6m0pmh2dbvGHvEx3NdzVhUAGRSi8uexQoVqyWxawX18o5yC5gFY940bBV5gD00z3P4RCXQ6UU/CajgDcfyPHu2VA8BNHs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782022499544.95959311443; Wed, 30 Sep 2026 08:27:02 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAc-0008HD-FH; Wed, 30 Sep 2026 11:24:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAX-00089x-DI; Wed, 30 Sep 2026 11:24:29 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAV-0001zB-8y; Wed, 30 Sep 2026 11:24:29 -0400 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5Qhf1932724; Wed, 30 Sep 2026 15:24:25 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx4fecyeh-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE38BM2287793; Wed, 30 Sep 2026 15:24:24 GMT Received: from smtprelay04.dal12v.mail.ibm.com ([172.16.1.6]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0q4pb3j5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:24 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay04.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOOmG29491748 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:24 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id ECE4A5805F; Wed, 30 Sep 2026 15:24:23 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 610D75805E; Wed, 30 Sep 2026 15:24:23 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:23 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=HFyJXEbp2yaL+lYzt ZKDi+2mf0MpDuNKqlCgIbTDzv8=; b=PP4sVK7kG+W7FQ6j2F14IM1hNjnDmCZ6w 9mqfV8KBvcUAQT32I6ujxkNTHPQAT5tLP8gLjK5Adf1llT2tIkrbvdJRMAvQ4q8+ 5a/2Dd8Nxzk8HR4oyGsBYMYU0dVLP6BU3005AClkO0BGt48wU2yaOsdFch8I5Oxo GLurqRs8t5AMKvD1eeJeCVCungHZHNF1GDL069iEUCsx4B9F3M0qKGuMPHJRSqEQ n7JcqOePR+xoXkfL72LUR0tSGlSv0MhccggMGMEBtC1dLZuJUCDW+9LOHr5rpQrE 0vMYmGynD7qhAOMFbD6PG20d1S4Pgf9BxkoJvbkqhh5x2EZ4NAa4g== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman , Anthony Krowiak , qemu-stable@nongnu.org Subject: [PULL 04/23] vfio/ap: Clear error object pointer after non-fatal errors Date: Wed, 30 Sep 2026 11:24:01 -0400 Message-ID: <20260930152420.1956230-5-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=FYWiV5+6 c=1 sm=1 tr=0 ts=6abd29a9 cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=rlruftgHjx7kiOjKd_sA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX8WALSVPtAFcL hzEVIsx9TeuAJvNb6NtK0vIUQYLjQD32hC6JsfgO0A0altOEuhH8sRGCUPCQ3zo3PC3cZ+SXSnC 3/lR0fEodnaLU2mQ4xLtdx+sLpzvfmk= X-Proofpoint-ORIG-GUID: aTJEh0NAQGlwQ6xITKbUToVfUAJFDZgB X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXyB3V4n6IzLz5 cXGAy1Zv1N2r+h4Krq5qk7M+cNB5eJqgd+QMnLYqF/ZasYY4WGX2nZfuMWk0LryNtg4/CjG3a0N bojwoUvK7CdnQu4dI+W9z9OT6YwY/P45J/oVm9L+Dm00BXbQiYS44GJI7Lm43QijxXMsvEGnXLq Gl2SBca9CTOeyUZRouFZ79xdvsMkC9PILGuuEuFmFwxzhpewgfVX0KLvDduttav/GkEayOzkBwL Dry+nV/16SHp14K38qKprF1NNrUx7jfvC0hnCbiV4MlPaERU7FgP2nkRFT0R5fjtV5uXDQCdxSQ 5FSRa+8fgehqrS5FXEdZ4EVixTVEid90Pz6VvNP3WkMPoZp8Kq333adk93OzgaV+eHSTo01EVgs ym01gDKSYldCz7ylyuXY1BMUotlTI3+53ZA3fHoL+pmrcUVL2IH3JQ1ict4nNxxjVtjgKV5c4R7 DLMxbhwRXOqPAC3r0pg== X-Proofpoint-GUID: aTJEh0NAQGlwQ6xITKbUToVfUAJFDZgB X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 impostorscore=0 spamscore=0 phishscore=0 priorityscore=1501 malwarescore=0 bulkscore=0 lowpriorityscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782023650158500 Content-Type: text/plain; charset="utf-8" Registering a new IRQ notifier will allocate an error object if needed, and warn_report_err() will release that memory once it's finished. The pointer remains, however, so subsequent errors after the non-fatal errors in vfio_ap_realize() would cause an assertion failure for a non-NULL pointer. Fix this by clearing the pointer once the warning has been reported, to reset the state of the error objects. Cc: Anthony Krowiak Cc: qemu-stable@nongnu.org Fixes: 1360b2ad1f ("s390x/ap: Wire up the device request notifier interface= ") Fixes: 0fb8a62fe4 ("hw/vfio/ap: notification handler for AP config changed = event") Reviewed-by: Matthew Rosato Reviewed-by: Anthony Krowiak Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-5-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/vfio/ap.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/vfio/ap.c b/hw/vfio/ap.c index 6e2a1223ea..2926e04ad4 100644 --- a/hw/vfio/ap.c +++ b/hw/vfio/ap.c @@ -247,8 +247,10 @@ static void vfio_ap_realize(DeviceState *dev, Error **= errp) /* * Report this error, but do not make it a failing condition. * Lack of this IRQ in the host does not prevent normal operation. + * Clear the pointer, since the warning will release it. */ warn_report_err(err); + err =3D NULL; } =20 if (!vfio_ap_register_irq_notifier(vapdev, VFIO_AP_CFG_CHG_IRQ_INDEX, = &err)) @@ -256,8 +258,10 @@ static void vfio_ap_realize(DeviceState *dev, Error **= errp) /* * Report this error, but do not make it a failing condition. * Lack of this IRQ in the host does not prevent normal operation. + * Clear the pointer, since the warning will release it. */ warn_report_err(err); + err =3D NULL; } =20 return; --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781922; cv=none; d=zohomail.com; s=zohoarc; b=O3a5VpsoQABMqIKYArTdN66dmhmEeeDkfp5jJmwP9tZSwtXTKnrezM81Zlu3eokWUvD4st/VPYn/NnLMZRaAsebXCKfG+8NuVZ0sPoWqeYD7bVmW8jlt79mxM74lfkoWAbWaKNcuCDIv4wNh3SThCm7v42EGH0sVlnjOyqH2gGk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781922; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=RQEkSInkulSL3Zhq7AS2LV2oMRSPuSXJr0NYt5J6WP0=; b=SP9l1kb7pZqQXbqUggIBbdfO45MQDV3qg+x08IuS0Es7i9th8jzk11FLYGwC/BYIOJIKk/xEAkweabcNtVT6+pn3YCceUiKpSGoAsj1qp72PyINY6XwTGuBBB2dJktpeL1fNn1oDeb1GWkKuPNhl/nr4/xyyT+rsQEs4xpsn0oA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781922869807.2373885450222; Wed, 30 Sep 2026 08:25:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAY-0008C4-Rh; Wed, 30 Sep 2026 11:24:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAX-00089r-9i; Wed, 30 Sep 2026 11:24:29 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAV-0001zN-Ez; Wed, 30 Sep 2026 11:24:29 -0400 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5RFj1932738; Wed, 30 Sep 2026 15:24:26 GMT Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx4fecyek-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:26 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE3BXE3577012; Wed, 30 Sep 2026 15:24:25 GMT Received: from smtprelay04.dal12v.mail.ibm.com ([172.16.1.6]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0j23m9kq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay04.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOOcS12976762 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:24 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8BB1E58051; Wed, 30 Sep 2026 15:24:24 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 158B358062; Wed, 30 Sep 2026 15:24:24 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:23 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=RQEkSInkulSL3Zhq7 AS2LV2oMRSPuSXJr0NYt5J6WP0=; b=Q0gYjikXMNVR4zRu+cUSIrvwlQFkAF3eV wxkxcESnf+DBQHlZuWRpqvBTlFt5GBCAspvCD/4LL+lokLTJFBzVxpfbxPf3/r/O N30OmXpylBlLG9TsVSU5Wf+Cg2SAnV/iMmibjHF96SqfHExrhL6XlT7jPKX+oyOa bJ0XipEIabluuW6M2ggYjV292u32S+KEsneXseZlS2+AlQtkaoXg1AhVEHVcFClr 4GLTEhUR4++0rY8sdBaU6aV6Zrzr3xa1ySHco5hjkYN4OxXTfTB8PB3WtJZUxN3X t8CX5Ac8rb2f7bVIMWPKGwXgEwHJfUC8Re1/RBVgumgS+vo1NEwag== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman Subject: [PULL 05/23] vfio/ccw: Clear error object pointer after non-fatal errors Date: Wed, 30 Sep 2026 11:24:02 -0400 Message-ID: <20260930152420.1956230-6-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=FYWiV5+6 c=1 sm=1 tr=0 ts=6abd29aa cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=eyrJr5MS_a8KrCayzkIA:9 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX0aoQNe9UMBad h0L3SDigLjYeAqbTlO6A6UO5P70DoWkF9dCLPqPrksZUs6oKneLTDvI/HFsLGoKULF+QQjZeESb Z1kLk5q/7JOy8ulE6in2yefjgtZeRtU= X-Proofpoint-ORIG-GUID: xnE7RJk4My_E5L5eOZ48KZRrz8eD8iDv X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX2d+miWFjFj+t Aalpc7XeESbpHrax2oZS2jd6ggtcYMI/d0O6+GUmex2PIVOTIo9PE0wFgBU2R8Q4TXhFcdwiC6x sS/CxN2xbsJcEF2izMIMFDP7fohSnKSkEtKaX4UjCS8/gYh5s6hhn66KUsXMjQHqOt1SnBR/d+c 2tnBo4tcnEPQDbgQvoHQwdPAwx5LNCJawfRH7qhr+qwgaJhhGySQuR7b0e43vYwdhrYyYVzLNZw O/Ln7tjiJxXG2qi4X7seHMsKyr81/xkJJJt7b6q4cCzjfpiQO8Ff0Gor8Em44nBjr895fwmfShn aJ6wUk2Nh28fIOYRDeGjaESEeM+Ar8+iei/xM5NdsQxRtBOZlVf54sLbD3ZkQqPhcI6ORh0ezDZ WsZPQ9z22VlrBEHmecRBngADyVhjqrqYP/Mx6RJWL627tLZNF6Yt7REZnqeBz1lppkU+3TVvr7Z IHIN5LPZMoMw7y+psmQ== X-Proofpoint-GUID: xnE7RJk4My_E5L5eOZ48KZRrz8eD8iDv X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 impostorscore=0 spamscore=0 phishscore=0 priorityscore=1501 malwarescore=0 bulkscore=0 lowpriorityscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781924995158500 Content-Type: text/plain; charset="utf-8" Just like in vfio/ap, there is a non-fatal message that could be generated, with a stale pointer in the error object variable. Unlike vfio/ap, there is no secondary message that could attempt to use it. Clear it in the same way, in case that ever changes. Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-6-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/vfio/ccw.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/hw/vfio/ccw.c b/hw/vfio/ccw.c index c3dc7c1962..8e29a3ae61 100644 --- a/hw/vfio/ccw.c +++ b/hw/vfio/ccw.c @@ -604,8 +604,10 @@ static void vfio_ccw_realize(DeviceState *dev, Error *= *errp) /* * Report this error, but do not make it a failing condition. * Lack of this IRQ in the host does not prevent normal operation. + * Clear the pointer, since the warning will release it. */ warn_report_err(err); + err =3D NULL; } =20 return; --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782100; cv=none; d=zohomail.com; s=zohoarc; b=erOtFOWPpFZtvsj1AbaQIz5VocZ5zMPVUvIcjZGnCj4kDfTSgH+IOUTKvcmMkT8jCEFCZQiFqZ+kiSjxLj1DEgpEQhzVEtHCUpDJj95v5g/BOoMSqTvA9vZPXsTSAGztCRPFqbEdu9u0zsQL+t4KJJ7OYBI6uknnkitPTs8/Sms= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782100; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=yY5GacTibTvZXzAEKX+jjlWyEpFRvJYd594FU9L2WZw=; b=maoQvSSBNfJSnJh48MTBtkAUsqWQV9dzoq/smbnCTtt1kVNTiYvurYnMqMF3rQF+1Z92aCZn75jceeQhR0g4/zbigeBH7tyQ4xrLe2AgdfBtFURiIutjlbcTKmW9YQ0RV+OhwZ5fllp9pFhsjXmFC7gcf25jjiS70edFgqqOGGw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782100424510.76516489611004; Wed, 30 Sep 2026 08:28:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAb-0008Gc-UP; Wed, 30 Sep 2026 11:24:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAZ-0008CQ-2N; Wed, 30 Sep 2026 11:24:31 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAX-0001zy-Gc; Wed, 30 Sep 2026 11:24:30 -0400 Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5bqZ1335969; Wed, 30 Sep 2026 15:24:28 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5qrdtvw-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:27 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE39S32287821; Wed, 30 Sep 2026 15:24:27 GMT Received: from smtprelay02.wdc07v.mail.ibm.com ([172.16.1.69]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0q4pb3jb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:26 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay02.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOPQD32309988 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:25 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 1BAE158051; Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A75595805A; Wed, 30 Sep 2026 15:24:24 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:24 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=yY5GacTibTvZXzAEK X+jjlWyEpFRvJYd594FU9L2WZw=; b=nwJEWmQjr7t0N7JFjjpWvmjfROPdKALP9 8Bd1uMkW6iSanUdIQ708xMW1Ys3/zrzB4mqdc82P7KWB+MzoMYgTxrACSLzbgQFg FGQwSmdsiX0EkQETKdVgoJhS/s8uYPwAO58rKBJweDjOeJH9pWRPf5ChgQakw6NN Uaev/ZNpzNIrqsXN/uuL1eWCnwp7Wabss9QDqjsk/HUfpEbzPOWh4t2wv3ciJFf3 v7xo2hqn8b+S7Gdfm7E17YBtYcMe+Z0/rhZJ/MB5B+GVpfkECW+C4Obe/AtklKx2 sugue8T5lo5W3S1RdblWpkRBwreF6Knd84RhAxL+L2FcBOe81yo8w== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman Subject: [PULL 06/23] hw/intc/s390x: Fix payload to KVM_HAS_DEVICE_ATTR ioctl Date: Wed, 30 Sep 2026 11:24:03 -0400 Message-ID: <20260930152420.1956230-7-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXyUWFbuBu8WEn 6yRRCOLNVAMmtpOg8sOdYXku6EpJR/V/37ltgw0DMpsX+4Kd/O9rUa9dKOUgusfDCdlGPsKtvei eVZIodQza0BBWeFMVCzNAhBSB78E4bLQXMevO+b7oSoP5egiSsDzDHFtSNdW7/f81ANH9d2ePqI VBsLi+MLRi0mkRASQ/vqg3A7p+LjSxVZof8inpG0zXjbKL1iT0KyTy4SE4sCNW+8aJ2La/gWjF5 QLgW2n5ui9L8uAJDHJxL7XpowCBKIO22QERdRmHWqWhP3QTtjHYmDen+odcyQsPBv9iTJfUv85G fvXIdNMQaPKtHlQ7gyFsDioMS8dNeAWQGAMOvInPCXzYPFJqvAFwxHQiDRS5n478qcBNrj1KJo+ kzUM7wB7EW2Rp7W0pjhcupKjFnFHZM7fmNq4VWDxvBjqVUMb9XhOztFbmuRDaRIpgIF9YwDiTcv PZ9u6VZnyZ/aH9lz7ig== X-Authority-Analysis: v=2.4 cv=SPbXx+vH c=1 sm=1 tr=0 ts=6abd29ab cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=uAbxVGIbfxUO_5tXvNgY:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=cb2EWknS8209ijoe3xIA:9 X-Proofpoint-ORIG-GUID: CkAxj3SQUuGMh13Qof7-pGGIM9_kMwkm X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXx4EbZstJpgfv Gc09f7xpEMm8hlU+PapBAjSX/u0aTz6EQZeZFy5o2YB3eW6o3e7DkT6H9XLOBsg2ffYevVNT1Uj mwhXsFU9sWFQkn7u5M23NjbBtz3szcI= X-Proofpoint-GUID: CkAxj3SQUuGMh13Qof7-pGGIM9_kMwkm X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 suspectscore=0 clxscore=1015 spamscore=0 lowpriorityscore=0 malwarescore=0 adultscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782102159158501 Content-Type: text/plain; charset="utf-8" The ioctl to determine whether KVM_DEV_FLIC_CLEAR_IO_IRQ is present receives the contents of the attribute struct as its payload, rather than a pointer to the payload itself as is convention. This may result in erroneous errors from the ioctl, which would result in clear_io_supported being false when it otherwise could be used (which is helpful in device recovery). Reviewed-by: Matthew Rosato Reviewed-by: Christian Borntraeger Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-7-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/intc/s390_flic_kvm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/intc/s390_flic_kvm.c b/hw/intc/s390_flic_kvm.c index f833a3996a..5e6d422fba 100644 --- a/hw/intc/s390_flic_kvm.c +++ b/hw/intc/s390_flic_kvm.c @@ -633,7 +633,7 @@ static void kvm_s390_flic_realize(DeviceState *dev, Err= or **errp) /* Check clear_io_irq support */ test_attr.group =3D KVM_DEV_FLIC_CLEAR_IO_IRQ; flic_state->clear_io_supported =3D !ioctl(flic_state->fd, - KVM_HAS_DEVICE_ATTR, test_attr= ); + KVM_HAS_DEVICE_ATTR, &test_att= r); } =20 static void kvm_s390_flic_reset(DeviceState *dev) --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781910; cv=none; d=zohomail.com; s=zohoarc; b=EMI/bL/pyoss4oAYlAmJYTO7mw9fC7/0TBVzG0CbYGEr1V6eAgYO4WtKHjJ6EGkbs/55771RPk2LKCj4Fi3ntAuk6xN8IoyIaJ8gSDgvZLOeVEPopGib98Xd9PRtGMUbvkURwFKz2QskGtVRbhzfaOsLB6EDTMTTVkRSZWVg4JM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781910; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=kU+0FnvLhfF5GB5EUvcJVrnEdThXGKf4ji4hJnkp+OQ=; b=Ak6EZyEF2282U6J2+DmcfHmo0+iV7yfzQsLmbipd2bJnDyLlYEBi35IGkWUEEEDWGYkL+RTAljptV/lEFotTaiUAqTlTEhbkkmCKLuP4CohJ/lLqimuo6eo6xyQDazA91mBeovhMFMWL3wnoO01K0OFEaxptp/FZFZL959e2FuA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781909992820.5778527400706; Wed, 30 Sep 2026 08:25:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAg-0008Md-8u; Wed, 30 Sep 2026 11:24:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAZ-0008Do-R0; Wed, 30 Sep 2026 11:24:32 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAY-000204-50; Wed, 30 Sep 2026 11:24:31 -0400 Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE65Ie3172226; Wed, 30 Sep 2026 15:24:28 GMT Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5s5dtr0-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:27 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE34xU3605826; Wed, 30 Sep 2026 15:24:27 GMT Received: from smtprelay02.wdc07v.mail.ibm.com ([172.16.1.69]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gxsvhq2f1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:27 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay02.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOPsm32309990 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:26 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A983E5805E; Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 355455805A; Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:25 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=kU+0FnvLhfF5GB5EU vcJVrnEdThXGKf4ji4hJnkp+OQ=; b=MB1h6OHirJppQFNeaohbqgJV2uH+WdRxN bksxu2PKeo/B4L+8xxIo0xMv9E1EcLAvz8aqLfUqmvxl2AG6T5hH3PohFVmkKREb ObJ60M8HgGAXzsO9r+YlQW4tZTRwIpUlGnQG6Nb7cewq6y8gOKH4MiMY6tGSeAiB QG6qlZWICi0kwHKghlD8rYfJKRSJP+ebkuhXeYb49f/HsVVA8XWCmIyXbf3Ee3XH PmtQxX27O6kYuOCo1I4mflD+7jA2nNa8XPE8FTA8Jux85QfDyrfVPyFT5AiroFtS BieipuObWBbGKk3u4fmIYN8J+J3LIYkAK8EtqpBDFM9gEWrbpAEFQ== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman , qemu-stable@nongnu.org Subject: [PULL 07/23] hw/intc/s390x: Fix check after g_try_realloc Date: Wed, 30 Sep 2026 11:24:04 -0400 Message-ID: <20260930152420.1956230-8-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXxLXQXCbAtiyw mSfQwVulZqtRWSIz3n1qPoNjCmn0qR+DsaQZoA1PRUS+eRnS6eeJlmbiIlKAgRkbVSTYxW8yJ4g sDhpKfxB0qPCJUQzgNUAlHmAKGPgkVU= X-Authority-Analysis: v=2.4 cv=HJ5WhYtv c=1 sm=1 tr=0 ts=6abd29ac cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=M8FnGKaJMcETolB0Q_gA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-GUID: -ZGZqMBhyPH6ge9IVsYitL9NbYdjoiME X-Proofpoint-ORIG-GUID: -ZGZqMBhyPH6ge9IVsYitL9NbYdjoiME X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX+tUVk3FIZ7Ku per6QZyVAB5eY2ivuTq5pgeyF7F9HTLUWHSOnAZiczqDyR4lwk57bmLeKq0gt77nvC9fsvHBR3Q KDHFrRWKgS5hHmLEAQbZqxwRXDLd7Ss3ybNdJdcHDnyNb4SmmZpMFRU7Hphue3WLaymRafmWT5w +DKQu5i+O8I8cGjk+acMkfScV1REMReqfNk39N1da8KSfCDE0pvE5hngChVA9xStZtvkmxVTF/E rUb58cSd9iX1x2ZohLEspCkAJrc8Ih/x6zHtrPODm6OfppJY6R/h9Hd8yVayKmIXplsDmVv23yE 7Zjr30td3U8NiJNGzRmYsPe2BkuUVXvJgkJDrjjGukmV0XYlx8FXqYyelWUNsr8nca0tKKMtSYk huBeV4c53zUsPo/1QQ12blFiqceTNoY2XSdMDe1seXx0prba5VNGP1tnQ/FogxAUazcHdRhpJ3B MgTfOcxm+ShE8Zj/fXA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 suspectscore=0 bulkscore=0 clxscore=1015 lowpriorityscore=0 spamscore=0 impostorscore=0 phishscore=0 priorityscore=1501 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781911063158500 Content-Type: text/plain; charset="utf-8" The loop to store pending IRQs uses g_try_realloc() to expand the buffer being used, but the returned address is stored in a pointer-to-pointer, thus the check is supposed to be examining the contents of the pointer, and not the pointer itself. Define a temporary variable to catch and test the returned pointer. If it's NULL, return to the caller to perform the free on the unmodified buffer. If it's not NULL, store it in the caller's pointer and restart the loop against the new struct. Cc: qemu-stable@nongnu.org Fixes: 3a553fc658 ("s390x/kvm: implement floating-interrupt controller devi= ce") Reviewed-by: Christian Borntraeger Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-8-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/intc/s390_flic_kvm.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/intc/s390_flic_kvm.c b/hw/intc/s390_flic_kvm.c index 5e6d422fba..63c6ce81d9 100644 --- a/hw/intc/s390_flic_kvm.c +++ b/hw/intc/s390_flic_kvm.c @@ -254,6 +254,7 @@ static int __get_all_irqs(KVMS390FLICState *flic, void **buf, int len) { int r; + void *new_buf =3D NULL; =20 do { /* returns -ENOMEM if buffer is too small and number @@ -263,10 +264,11 @@ static int __get_all_irqs(KVMS390FLICState *flic, break; } len *=3D 2; - *buf =3D g_try_realloc(*buf, len); - if (!buf) { + new_buf =3D g_try_realloc(*buf, len); + if (!new_buf) { return -ENOMEM; } + *buf =3D new_buf; } while (r =3D=3D -ENOMEM && len <=3D KVM_S390_FLIC_MAX_BUFFER); =20 return r; --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782046; cv=none; d=zohomail.com; s=zohoarc; b=ev/Jmysw6HmXl2z/91xvSF+Pygf7cXAjuyB8Lkex2UG+Bkb/5iR5getmnfK1p3kTKExisbCQ9LT5tweGDt6mmyE/jGKB7/Of6y0gT4FHMIzaW0cQeqVS/hX574QOiQ7ACf8TNUj0x3OMRDgP4yjGKh+F9f0/7H72Ze50J9OP/Bc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782046; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=UoHKLP5oxJW4VSNl4+5J3lb2itYIVN7QAlA9+JgmmcA=; b=XDm1BeLs+di/4nE0maLjDMMSQKm/1Zq9j9zWqWyKJmrgDrCuzeLUsWssbPYdbXR2F9xnWm08WxL6qhJfx1wZpuvhZg/GoFHCd+v1SLnpxWqmqkEC6vT6G96jDCVZemqLlosWKjUZ/V9IzaaSVDUZpjbWDTwVLqRsrapQHoS9yJ4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 179078204615753.351595878646094; Wed, 30 Sep 2026 08:27:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAe-0008Jv-CX; Wed, 30 Sep 2026 11:24:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAa-0008FC-P9; Wed, 30 Sep 2026 11:24:32 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAZ-00020c-0U; Wed, 30 Sep 2026 11:24:32 -0400 Received: from pps.filterd (m0360083.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5OU03203135; Wed, 30 Sep 2026 15:24:29 GMT Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5j5dyjy-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE353j3576945; Wed, 30 Sep 2026 15:24:28 GMT Received: from smtprelay03.wdc07v.mail.ibm.com ([172.16.1.70]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0j23m9kv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay03.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFNfli30147296 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:23:42 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 486315805E; Wed, 30 Sep 2026 15:24:26 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C56335805A; Wed, 30 Sep 2026 15:24:25 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:25 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=UoHKLP5oxJW4VSNl4 +5J3lb2itYIVN7QAlA9+JgmmcA=; b=j508yB72eOxhFvgoDQ7FU6c/bi+a+7btL f2RfCeA+BEOPfZt/ZBav3AMHV8J7aNcxHWmSZLyVKZFPehpuA83feUTIWViHXEfc XNmGs29rEi4VT4CO7uR+RA0StA3oghihY6PTPhEUkpsWMUpK+8m6Ll+3aMt0kj2Z B2Af3U49ja/eLftoMp/bSwDb7rsGQ920jiCQBnuZGvFZ2GOLm3jOgUnmuUe+oAT5 myg5/8iHFt0idaKXi/akl7McNXZHgZHomBNMGDlrgJplPdihn8LLa4iQxxhizTk4 n29Hq864+VIzxiXN9fpDNpvvF19xPF7gJo2XSvjiX5YZSwbAgDHzg== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman , qemu-stable@nongnu.org Subject: [PULL 08/23] s390x/css: Use datastream pointer for checking no-data CCWs Date: Wed, 30 Sep 2026 11:24:05 -0400 Message-ID: <20260930152420.1956230-9-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX1q/lq8Hg+EtR Jx9VIKQq2TZeRLixcAyJltdHzOhbIK+JwdiHbD2lGBv9b/4dyi6jZ8MGLbKjyjhBHYy7OdGQFi1 V5WJGdXg71tL5V3UFSzwIZFlNjydNSk= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX39NZKCR9kR9v jjgmeF5AwZhYEoBOChLbUIiupliqnFyjV48m2bJCwUsoQkKnn9Ib6oVxM+fzIIYAP4n+Xqn2+e0 yFbQ0rzIHhKIV2oi4/QpLkX2oQX2FGGb0muHCGA3OyeCho/q51GhoQ8dIyOccthsT99xf7bHc8g VBgZKW+xPM1J52hjQtqqX+iafVGLyLs7STsBGLESNNNDGzLHGDl4ccs/LzaizejdUaftxuv15qp Umd2yDWLL4PyWsX2Sh+UM3XE1fWbNcm22MZtM9wC9NmWCSSVxnp78EkMTLevtZ9/hFXNSpCIbYq yFDhSjHK73TjEHkD7WDbigFchtteiQIPlBwJTIJ3UZ0MyfYYD2WtAHpsUZbUXWf883mYasPjRj0 69f4jmnn5E5QSo3LvADNT6lTrGLMpmbD2t68/hzpLdyuSLtHUIbyFilc+pmOrs3DYz6Qb+4Xc/5 Hpf7wH7/2fQxiP2CZfw== X-Proofpoint-GUID: XacdnyMT8lH6tv5Nj8Pl1_Zb0Uz5WrVP X-Authority-Analysis: v=2.4 cv=RKcmjIi+ c=1 sm=1 tr=0 ts=6abd29ac cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=iQ6ETzBq9ecOQQE5vZCe:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=8cHL7K5PRkdKNGgrHUUA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-ORIG-GUID: XacdnyMT8lH6tv5Nj8Pl1_Zb0Uz5WrVP X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 priorityscore=1501 spamscore=0 bulkscore=0 impostorscore=0 adultscore=0 lowpriorityscore=0 suspectscore=0 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782047819158500 Content-Type: text/plain; charset="utf-8" The channel subsystem will reject channel programs that incorporate 256 CCWs without a data transfer, but the existing check to account for this only does so for CCWs with a data address of zero. Other valid CCWs that wouldn't transfer data are not accounted for. Rather than re-inventing the wheel, use the output of the datastream at the end of the entire CCW parsing tree to indicate whether data was moved or not. Cc: qemu-stable@nongnu.org Fixes: e8601dd5d0 ("s390x/css: catch ccw sequence errors") Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-9-farman@li= nux.ibm.com Signed-off-by: Eric Farman --- hw/s390x/css.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/hw/s390x/css.c b/hw/s390x/css.c index 9da9128d88..65341c68c3 100644 --- a/hw/s390x/css.c +++ b/hw/s390x/css.c @@ -1016,13 +1016,6 @@ static int css_interpret_ccw(SubchDev *sch, hwaddr c= cw_addr, =20 check_len =3D !((ccw.flags & CCW_FLAG_SLI) && !(ccw.flags & CCW_FLAG_D= C)); =20 - if (!ccw.cda) { - if (sch->ccw_no_data_cnt =3D=3D 255) { - return -EINVAL; - } - sch->ccw_no_data_cnt++; - } - /* Look at the command. */ ccw_dstream_init(&sch->cds, &ccw, &(sch->orb)); switch (ccw.cmd_code) { @@ -1103,6 +1096,20 @@ static int css_interpret_ccw(SubchDev *sch, hwaddr c= cw_addr, } sch->last_cmd =3D ccw; sch->last_cmd_valid =3D true; + + /* + * A CCW that transfers no data is allowed, but ensure an upper limit + * is established to prevent long-running channel programs that don't + * move actual data. + */ + if (ret =3D=3D 0 && sch->cds.at_byte =3D=3D 0) { + if (sch->ccw_no_data_cnt =3D=3D 255) { + ret =3D -EINVAL; + } else { + sch->ccw_no_data_cnt++; + } + } + if (ret =3D=3D 0) { if (ccw.flags & CCW_FLAG_CC) { sch->channel_prog +=3D 8; --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782025; cv=none; d=zohomail.com; s=zohoarc; b=gby33nM//JhPwMqfRYCSEDyJhrrVxCAXPh9fHY/J80J0y8KEkqJOGPaGPlCxzfhxaGxFWV+iEd+6lGLN6l57VrUleGu9Wd5VsfsvzL/9sWejvkD3qs/5ut9vUIHhWHrNsdRuwAgj/sn9HsjQTlsuzYqTGWpea2R1lDoST/VlUYI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782025; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=YTZwtP7DWzEx8F5LTCN/90pFiJhaIE8gTHU8F0ez5Mk=; b=DEGyNXdrHaYY7jgyeX8EAknssHpZwJEKy7wVp3K41x4OVWc7lGcyXTsOD8mqXTJXzgVxDgq1DINbaD/N64TJC14QVyJKRpUvMw5RVQy4gyxeKU3pGfXZolLYRIWCiJ+msdBK+E9t0cww8sfi5OgPdU1NGo0/CPixerJODXEkwc8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782025552806.7562348466806; Wed, 30 Sep 2026 08:27:05 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAd-0008JJ-TX; Wed, 30 Sep 2026 11:24:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAa-0008EW-DK; Wed, 30 Sep 2026 11:24:32 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAY-00020S-OC; Wed, 30 Sep 2026 11:24:32 -0400 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5QIx1932696; Wed, 30 Sep 2026 15:24:29 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx4fecyet-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE35ko3541457; Wed, 30 Sep 2026 15:24:28 GMT Received: from smtprelay04.wdc07v.mail.ibm.com ([172.16.1.71]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0hfpcet7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay04.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFORke22217410 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:27 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E81A85805E; Wed, 30 Sep 2026 15:24:26 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 65C805805F; Wed, 30 Sep 2026 15:24:26 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:26 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=YTZwtP7DWzEx8F5LT CN/90pFiJhaIE8gTHU8F0ez5Mk=; b=O2BFG7D1EsWWDORi3eoXoehXZPKHHGBaz y7oQ3QHV4c0tlXTPXE2hez/KoGNgXkGJD08APgI9jp+w2XuwdLCEHdqtsP7spI0v cFbPKt8gdGGyVxTYNGsF5JOWSzuunqPIy/moc11/WWzvAvOBbKsk9qwg5aYAy059 +eTlYz2b562LaM1Td6wB4ZnaG+fpe8fKzoSk/KnNeCRQcjQ4u/mX/gRFtk/Rfs4R 7ifOlhdlBf3KYPFipGCHOIihQ5HEEZxtrQWGP7xbm1vrp/+13sa6Pzu13xosll4a q/rqUfSbqU9EWFrzV86Y416TyndotL9Fu5xZ/NeF7mBMEkUfWXM+Q== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman , Janosch Frank , qemu-stable@nongnu.org Subject: [PULL 09/23] s390x/sclp: Reject short headers in PV case Date: Wed, 30 Sep 2026 11:24:06 -0400 Message-ID: <20260930152420.1956230-10-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=FYWiV5+6 c=1 sm=1 tr=0 ts=6abd29ac cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=znbey81Re8uwHDCjDHUA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXywCWvFGVWC9M 4WOBP2++aNurbc3xvhziSr3HKjL4mrnfuqaKyYtrd9FYbtCERIj6Ium28nGfk2hXAcbo/leuc+c 4B4F4vZ4SzBWdrXUoA/ivNEiv62VdR8= X-Proofpoint-ORIG-GUID: jQpe9fQKeCDB4adTNnXHVc2hVk7ejj3e X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX9tPcyEjDRcJq OciKZAd+6Ims8qYKYc+SGnIm/OHckKYrrcJnxQ1BJjIyM6Das1RKliVazZZbMYdU3Qujc/CMeMk puSsWfNanILMzcrpg7dPOB33g4qPbAAmNeNYi9zvLm+ons18fcm3H/bUV+p3hPhxfk1uUO86f2e JM9/foEmcnB/DlbF4a6FdfgM7Q7gg4jyqZ2B3Di8KdNTvRMxt1DGwdobSTA+LOXxEwzqlKjlolg W84NOZwhV6MewOWaI+HZl4ikquo4reuNOLj+J5fTUUGlXBe33fzqR1WXClXDP1dizcuTxTqwCcq EbES7crZzU5K1t9RVXlfF/iBGIoy0/O1a0maS+Qu2D4t8hI0BJdH4L767hDYHYC6GdYRext4qdw KThaVU1fn+rF3abNZr2LgsHuibhe1H2SQDwzZ0N2wa4USFm/HOL0/TN7BA/inschJ+f5JVgWXPh BIy4N0rbZyMCz8lkVfg== X-Proofpoint-GUID: jQpe9fQKeCDB4adTNnXHVc2hVk7ejj3e X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 impostorscore=0 spamscore=0 phishscore=0 priorityscore=1501 malwarescore=0 bulkscore=0 lowpriorityscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782027645158500 Content-Type: text/plain; charset="utf-8" An invalid length in an SCCB header correctly generates a specification exception for the regular (non-PV) codepath that processes an SCLP instruction intercept. The PV case doesn't, because the UV enforces a valid length before getting to this point. The length is used to allocate storage later down the line, so doublecheck the length here in the (unlikely) case it is too short. Cc: Janosch Frank Cc: qemu-stable@nongnu.org Fixes: c1db53a591 ("s390/sclp: read sccb from mem based on provided length") Reviewed-by: Matthew Rosato Acked-by: Christian Borntraeger Link: https://lore.kernel.org/qemu-devel/20260922201526.2383047-10-farman@l= inux.ibm.com [farman@linux.ibm.com: Updated commit/comment text, per Janosch] Signed-off-by: Eric Farman --- hw/s390x/sclp.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/s390x/sclp.c b/hw/s390x/sclp.c index d8b655efcc..ebd5e859c5 100644 --- a/hw/s390x/sclp.c +++ b/hw/s390x/sclp.c @@ -277,6 +277,11 @@ int sclp_service_call_protected(S390CPU *cpu, uint64_t= sccb, uint32_t code) =20 s390_cpu_pv_mem_read(env_archcpu(env), 0, &header, sizeof(SCCBHeader)); =20 + /* We should never end up here due to UV checks, but lets be sure */ + if (be16_to_cpu(header.length) < sizeof(SCCBHeader)) { + goto out_no_write; + } + work_sccb =3D g_malloc0(be16_to_cpu(header.length)); s390_cpu_pv_mem_read(env_archcpu(env), 0, work_sccb, be16_to_cpu(header.length)); @@ -290,6 +295,7 @@ int sclp_service_call_protected(S390CPU *cpu, uint64_t = sccb, uint32_t code) out_write: s390_cpu_pv_mem_write(env_archcpu(env), 0, work_sccb, be16_to_cpu(header.length)); +out_no_write: sclp_c->service_interrupt(sclp, SCLP_PV_DUMMY_ADDR); return 0; } --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782054; cv=none; d=zohomail.com; s=zohoarc; b=a5jbKYoM4v0w4VCVi0NygEIWIGqoWWdi6zE2XwvdwOct/1U/59cdDAWlqbPMcm44IL9TVMVZ7VgadPMHEVLoj2O847TGwA3TsV+x6FP69GU28MJNO76s6S8zh3esEGqNqT4CNYEeZ1yE+5vN8BTZaCS6SzzqOx7+RS0BPjOxJ+o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782054; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=wet4OO4d/HR4Tc2ldcwnIQ7jNnxrHl024LLW2HWoLy4=; b=P3/1lpqhThwh62FChg91BrQkkgw+4rBtHNjsmLkyZsJwgc8cVEObeRRKXEVdQAVfeP3eP0W0dNB8vByzfrAlanomWu0LJ63wG4HHEtLsG3AK9tsV2MZAk3jLeDDyZ/WChBnV748u7LDcO6C7Q8a2LXMBcQtJDLFpT/6uYtgUat8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782054140717.63440947867; Wed, 30 Sep 2026 08:27:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAe-0008KO-Ja; Wed, 30 Sep 2026 11:24:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAb-0008Fo-7Q; Wed, 30 Sep 2026 11:24:33 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAZ-000211-4W; Wed, 30 Sep 2026 11:24:32 -0400 Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5kiL3166822; Wed, 30 Sep 2026 15:24:29 GMT Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5ptcv96-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:29 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UEHve33569216; Wed, 30 Sep 2026 15:24:29 GMT Received: from smtprelay04.wdc07v.mail.ibm.com ([172.16.1.71]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0xcs9n2m-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:29 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay04.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFORs436438752 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:27 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9373558066; Wed, 30 Sep 2026 15:24:27 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0F6735805F; Wed, 30 Sep 2026 15:24:27 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:26 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=wet4OO4d/HR4Tc2ld cwnIQ7jNnxrHl024LLW2HWoLy4=; b=OLmPhqXCfU1qISjGd03A28I7SmAchzmdP ArMUzxPm0ttc1UW9zJpKbeZI6PhWVSe5Xg3iMD2YyiRxl51a60GOyYYcOyG/klFP UMAdd6ps74b9EO+Copgf+a9NzCP7TcdzI1cac9pZ8CDx7yBW8uETU8EbUqNWJH50 ACigdCJQcaFEziX6hxF5qMZhRYXfzll06G92Bt/of2WoonDTgw+NPZDl2vJ8fAz/ LaUbLQxMzWMRI02hEFyZa2NQczRyfhrK9lE7c1GSfeLwaPyC873pneUNlUYZxBBJ 6iXCQEe+lQ2QTKmykAY6ARb6MkE5ffXxg7UMrwV1Ze2eQy/hMxG1Q== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Janosch Frank , Hendrik Brueckner , Eric Farman Subject: [PULL 10/23] s390x: Expose pv attribute in QOM Date: Wed, 30 Sep 2026 11:24:07 -0400 Message-ID: <20260930152420.1956230-11-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: wqt_xrq6ti1FJ7kZCoZl0Z3VNAXrYGhx X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXyO0j+H6ey7Uy sOmkAqyjOXvxQIBYgXVIYXwqW8bNufXxtoUteM/Jcj6DskODXOxzbUOt2XX27jBS7649WpNTFm7 C/etlpaxztPGW0hlNvsLQrA8Jyxj24E3jV8tWbunT//A66j4ROwMzMZv9aNhlQd9xh93QCo0lp0 W8nVPYn206luQuKg5yInXAUyKL9fM0PcJezmUhy3e6ciZ+NLyn5Y/0G3rdO/Lt9HRo4r17VEOzX vweJBSF6mBNKMNwEmTrvsZY/eDvgLePpUknLAZhFdjAUrVKyVB31Tyf8yovAw8tb8Ec0c0hq+sy DdtBzJhkruK8Drs/dtviVJiUeYBJz5QsvXPsEXLH9ApgibMn6hYKBU6MIqbIGP/4eV2GG5+QYyl hzQxd+sxiIwPGKk7s1KakFbcXwXM7oZI1/2i03s/7RakERWXO2AIngwVzAGi2ep16ranZrbsqdd y5xCrI5t2U9YP4S4N1Q== X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX5pA1Uhljgj7z awlRSpbvaNWX5UJ5vmfrjcCda3VLcR5FnT/7OWcOaZa/25GjXvx126MXiX10ttx1w2/chRfnk3S e2HggzKWYt6pku0g44L+cvwZkUizddw= X-Authority-Analysis: v=2.4 cv=EY5d0/mC c=1 sm=1 tr=0 ts=6abd29ad cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=RzCfie-kr_QcCd8fBx8p:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=PPDVIYp6hs0TuBwBTBUA:9 X-Proofpoint-GUID: wqt_xrq6ti1FJ7kZCoZl0Z3VNAXrYGhx X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 suspectscore=0 adultscore=0 clxscore=1015 malwarescore=0 impostorscore=0 spamscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782055849158500 Content-Type: text/plain; charset="utf-8" From: Janosch Frank People doing VM management requested a way to query if a VM is in PV or not. So this patch exposes the runtime PV attribute which is true once the VM successfully made the switch into PV mode (according to KVM) and did not yet reboot to drop out of it. This of course does never replace attestation, it's merely QEMU's view of the situation. Signed-off-by: Janosch Frank CC: Hendrik Brueckner Reviewed-by: Christian Borntraeger Reviewed-by: Eric Farman Reviewed-by: Matthew Rosato Reviewed-by: Hendrik Brueckner Link: https://lore.kernel.org/qemu-devel/20260924142846.157848-1-frankja@li= nux.ibm.com Signed-off-by: Eric Farman --- docs/system/s390x/protvirt.rst | 11 +++++++++++ hw/s390x/s390-virtio-ccw.c | 13 +++++++++++++ 2 files changed, 24 insertions(+) diff --git a/docs/system/s390x/protvirt.rst b/docs/system/s390x/protvirt.rst index aee63ed7ec..7e6c6e10f4 100644 --- a/docs/system/s390x/protvirt.rst +++ b/docs/system/s390x/protvirt.rst @@ -65,3 +65,14 @@ metadata. In case this boot method is used, the command = line options -initrd and -cmdline are ineffective. The preparation of a PVM image is done via the ``genprotimg`` tool from the s390-tools collection. + + +PV property +----------- + +The s390x-ccw machine exposes the read-only runtime "pv" +property. This property is true if a guest successfully made the +transition into PV mode as reported by KVM and hasn't yet exited PV +mode via a reboot. This does not replace PV attestation which is the +only authoritative way to get a definitive answer if a guest is truly +protected. diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index 7fb78d8fa1..9e2db872fb 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -838,6 +838,13 @@ static inline void machine_set_secure_boot(Object *obj= , bool value, ms->secure_boot =3D value; } =20 +static inline bool machine_get_pv(Object *obj, Error **errp) +{ + S390CcwMachineState *ms =3D S390_CCW_MACHINE(obj); + + return ms->pv; +} + /* * S390x-specific global compatibility properties. * @@ -919,6 +926,12 @@ static void ccw_machine_class_init(ObjectClass *oc, co= nst void *data) machine_set_secure_boot); object_class_property_set_description(oc, "secure-boot", "enable/disable secure boot"); + + object_class_property_add_bool(oc, "pv", + machine_get_pv, + NULL); + object_class_property_set_description(oc, "pv", + "true while the guest runs in protected virtualization mode (r= ead-only)"); } =20 static inline void s390_machine_initfn(Object *obj) --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782002; cv=none; d=zohomail.com; s=zohoarc; b=LBTcSKWiHXSXZuFTjeEycG+ZPTim+dFzzcP3VSUuTW4LqwIdRDKjI3tSxAEAb90GrtQIpWy8hKQ3eyMPKooG9Tc6m/VzWEtaRLKggQKf4x/nvZqqn2/Eg9rve6WvL3NPY4MbHL9DBCc4nMG6y7h3KQUcTvr3GwZd0nU0Lhf8Zhs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782002; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=pNlveaTCHRCKe+GYCOOMUxObmX8nQfGCKX/OLDVLVio=; b=ZoaaSST6m0DdqWRI9uIJrpUJsa5aUCv0YMvsmzkdNBoQtjs9isuJ5JgAWuXr/hLW730YHW71g/HtCrDbszgrjK3gejaGnqUgx5+IObYp94DpMggZZN2MrqxWZfFZZ6/yQCPy+QJYfZjJfFI7wYXzh07KcJeHv33fz/r+X7v4h9g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782002805253.49918418659; Wed, 30 Sep 2026 08:26:42 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAf-0008LT-CN; Wed, 30 Sep 2026 11:24:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAc-0008Hw-J4; Wed, 30 Sep 2026 11:24:34 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAa-00021S-HB; Wed, 30 Sep 2026 11:24:34 -0400 Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE64H91337364; Wed, 30 Sep 2026 15:24:31 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5qrdtw4-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:30 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE39S42287821; Wed, 30 Sep 2026 15:24:30 GMT Received: from smtprelay05.wdc07v.mail.ibm.com ([172.16.1.72]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0q4pb3jj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:29 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay05.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOSLS28770916 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:28 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 30F9F5805A; Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id ADD0F5805F; Wed, 30 Sep 2026 15:24:27 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:27 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=pNlveaTCHRCKe+GYC OOMUxObmX8nQfGCKX/OLDVLVio=; b=Z3SgfYKq+UXOHdnPr9o9/UZ6Y/Bk9QUfR i5SFNlOKs5qnWkVB2gKmfo+YBq9OzJKQeIm0XB13wkirxamAGpIYfCEe4iMpQXc3 mlwNAhA6yd3ORB+ZoeAaelwU4p5VBQYSK0VC/F0dZ3gBW5VtA8WHSX5uHbF2RXaE qTBGtBrALS9y9QVyqnaQ88b3U6j+8NYGmYkL28Ryz4+92Nlz7GDPXbABiyOKMutA QgaNcHmARYJ5u5swwDK3S85SZMtvUtTnx/tkIOO6Aqa7+ruI91ibvISLTSzQDj1A qrrycZMvPQB1L9O9g1xBjFGwLUHMhxQqvr7vEOMsPlCZd6hY0VwLQ== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 11/23] pc-bios/s390-ccw: Move CCW net setup to virtio-ccw Date: Wed, 30 Sep 2026 11:24:08 -0400 Message-ID: <20260930152420.1956230-12-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX0A6l9mb2Mk+p X9/+6uZiD0kJfN/mJQRVO/X/FNIh/vIQ/qjqsmJIQ3hYXLB0HBjBrNNO7ll8tDMbySR7f0JbY5v mE0QLTAVYmbccomKBInf89ZyeV/Ld+BvJZRrEmF968yQ1/kQT4L44oGkUftlKYE0kzNNAbBgP8R 2f3JK3VYiYXHH45P8K1bWNsbd5sGSPejIKZ8aBZUYZXbRxpC0wszXTn1YxCspJV0xVwpNv3dAzy OVUa1MrBdjsS7dB7DqWrFO9BJjqh7W2tkauj7pKFVtrNcp8lTj1I6HjjswHED6pxSagaQYHFcqE SPTzfWp24DqICfFxFRfX8KfSLRkF1yMrnVQvhMIUdhrXZD5jaulRhfpvNyohcW6IsFK/f3uKtPN R/0Je84jfjWATNgKzUO5FSjy/GnouZPdkb78ko0+NN8JG+lSzQXeeqxECSlWx+VyzCqY+gmOSPV 2+Y2OXeX0cYh3gWcmYQ== X-Authority-Analysis: v=2.4 cv=SPbXx+vH c=1 sm=1 tr=0 ts=6abd29ae cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=uAbxVGIbfxUO_5tXvNgY:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=Aak0X9c2SgglYLKd_28A:9 X-Proofpoint-ORIG-GUID: tOxaOnF3u6lUWjR1gU0kmRR3nfy1aEep X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX36ehLZCXn15y s/cr5ZK4P10G+2S6+mmvZQk7zN3yfkJCtZiZcjhPOjPi3eHHvgigTfffpW/5JFpKumoSKuAYfrt /vz3K98aO7aw6FAp4+8EmI3MZ3p8GGo= X-Proofpoint-GUID: tOxaOnF3u6lUWjR1gU0kmRR3nfy1aEep X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 suspectscore=0 clxscore=1015 spamscore=0 lowpriorityscore=0 malwarescore=0 adultscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782003469158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai Move CCW-specific virtio_setup() and find_net_dev() to virtio-ccw.c to decouple the generic net boot logic from the CCW transport. Also update the error message on failure to specify "ccw net device". Signed-off-by: Zhuoying Cai Reviewed-by: Jared Rossi Reviewed-by: Jason J. Herne Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-2-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- pc-bios/s390-ccw/netmain.c | 67 ++--------------------------------- pc-bios/s390-ccw/virtio-ccw.c | 62 ++++++++++++++++++++++++++++++++ pc-bios/s390-ccw/virtio-ccw.h | 1 + 3 files changed, 66 insertions(+), 64 deletions(-) diff --git a/pc-bios/s390-ccw/netmain.c b/pc-bios/s390-ccw/netmain.c index ccd1c30013..bcb62bf6ca 100644 --- a/pc-bios/s390-ccw/netmain.c +++ b/pc-bios/s390-ccw/netmain.c @@ -35,6 +35,7 @@ #include "s390-ccw.h" #include "cio.h" #include "virtio.h" +#include "virtio-ccw.h" #include "s390-time.h" =20 #define DEFAULT_BOOT_RETRIES 10 @@ -489,68 +490,6 @@ static int net_try_direct_tftp_load(filename_ip_t *fn_= ip) return rc; } =20 -static bool find_net_dev(Schib *schib, int dev_no) -{ - int i, r; - - for (i =3D 0; i < 0x10000; i++) { - net_schid.sch_no =3D i; - r =3D stsch_err(net_schid, schib); - if (r =3D=3D 3 || r =3D=3D -EIO) { - break; - } - if (!schib->pmcw.dnv) { - continue; - } - enable_subchannel(net_schid); - if (!virtio_is_supported(virtio_get_device())) { - continue; - } - if (virtio_get_device_type() !=3D VIRTIO_ID_NET) { - continue; - } - if (dev_no < 0 || schib->pmcw.dev =3D=3D dev_no) { - return true; - } - } - - return false; -} - -static bool virtio_setup(void) -{ - Schib schib; - int ssid; - bool found =3D false; - uint16_t dev_no; - - /* - * We unconditionally enable mss support. In every sane configuration, - * this will succeed; and even if it doesn't, stsch_err() can deal - * with the consequences. - */ - enable_mss_facility(); - - if (have_iplb || store_iplb(iplb)) { - IPL_assert(iplb->pbt =3D=3D S390_IPL_TYPE_CCW, "IPL_TYPE_CCW expec= ted"); - dev_no =3D iplb->ccw.devno; - debug_print_int("device no. ", dev_no); - net_schid.ssid =3D iplb->ccw.ssid & 0x3; - debug_print_int("ssid ", net_schid.ssid); - found =3D find_net_dev(&schib, dev_no); - } else { - for (ssid =3D 0; ssid < 0x3; ssid++) { - net_schid.ssid =3D ssid; - found =3D find_net_dev(&schib, -1); - if (found) { - break; - } - } - } - - return found; -} - int netmain(void) { filename_ip_t fn_ip; @@ -559,8 +498,8 @@ int netmain(void) sclp_setup(); puts("Network boot starting..."); =20 - if (!virtio_setup()) { - puts("No virtio net device found."); + if (!virtio_ccw_net_setup()) { + puts("No valid virtio ccw net device found."); return -1; } =20 diff --git a/pc-bios/s390-ccw/virtio-ccw.c b/pc-bios/s390-ccw/virtio-ccw.c index ea5dbc2857..3c2c44529c 100644 --- a/pc-bios/s390-ccw/virtio-ccw.c +++ b/pc-bios/s390-ccw/virtio-ccw.c @@ -220,3 +220,65 @@ int virtio_ccw_setup(VDev *vdev) =20 return 0; } + +static bool find_ccw_net_dev(Schib *schib, int dev_no) +{ + int i, r; + + for (i =3D 0; i < 0x10000; i++) { + net_schid.sch_no =3D i; + r =3D stsch_err(net_schid, schib); + if (r =3D=3D 3 || r =3D=3D -EIO) { + break; + } + if (!schib->pmcw.dnv) { + continue; + } + enable_subchannel(net_schid); + if (!virtio_is_supported(virtio_get_device())) { + continue; + } + if (virtio_get_device_type() !=3D VIRTIO_ID_NET) { + continue; + } + if (dev_no < 0 || schib->pmcw.dev =3D=3D dev_no) { + return true; + } + } + + return false; +} + +bool virtio_ccw_net_setup(void) +{ + Schib schib; + int ssid; + bool found =3D false; + uint16_t dev_no; + + /* + * We unconditionally enable mss support. In every sane configuration, + * this will succeed; and even if it doesn't, stsch_err() can deal + * with the consequences. + */ + enable_mss_facility(); + + if (have_iplb || store_iplb(iplb)) { + IPL_assert(iplb->pbt =3D=3D S390_IPL_TYPE_CCW, "IPL_TYPE_CCW expec= ted"); + dev_no =3D iplb->ccw.devno; + debug_print_int("device no. ", dev_no); + net_schid.ssid =3D iplb->ccw.ssid & 0x3; + debug_print_int("ssid ", net_schid.ssid); + found =3D find_ccw_net_dev(&schib, dev_no); + } else { + for (ssid =3D 0; ssid < 0x3; ssid++) { + net_schid.ssid =3D ssid; + found =3D find_ccw_net_dev(&schib, -1); + if (found) { + break; + } + } + } + + return found; +} diff --git a/pc-bios/s390-ccw/virtio-ccw.h b/pc-bios/s390-ccw/virtio-ccw.h index 43d21906e5..7768c152d0 100644 --- a/pc-bios/s390-ccw/virtio-ccw.h +++ b/pc-bios/s390-ccw/virtio-ccw.h @@ -19,5 +19,6 @@ bool virtio_ccw_is_supported(VDev *vdev); long virtio_ccw_notify(SubChannelId schid, int vq_idx, long cookie); int virtio_ccw_setup(VDev *vdev); int virtio_ccw_reset(VDev *vdev); +bool virtio_ccw_net_setup(void); =20 #endif --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782047; cv=none; d=zohomail.com; s=zohoarc; b=DYIkb1ylE6KPk/L/rNhHuaek8r/VnJxQfcTf6WO4uSlYjdVTaTiak4V3q9zKpTBfP6QUXm5hMauQ92/bijbk561nsvG8vwzNlr0cP1vNDs19hXRys8cFEDRx/sf2NFFH6apmptzBNBYD7hfEI9lh+L5Nq9e1BNMb514bL6r8E9A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782047; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=qQRgN5/l+DZ2WdLGO7VRsp5H6wjMjRoWTc2ZH6ZeEjw=; b=Blqr4sReDQo3e7sl9UH0Akvwu6PxxQbpgD5D2C2iDtXqqhBxrVKPcuLA3QDHcVOkB5lrWFDeqKqPngKv1u0+2MrXyJiomQrQw70P0+n2BISFeCKGmLkinUb50wQDewwqnawtfdA9i8pXEivvabKW8/6XmKRvNzGf3PM8ysDvzNM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782047966969.2861077000324; Wed, 30 Sep 2026 08:27:27 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAf-0008Lc-Dl; Wed, 30 Sep 2026 11:24:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAd-0008I9-1z; Wed, 30 Sep 2026 11:24:35 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAb-00021e-2n; Wed, 30 Sep 2026 11:24:34 -0400 Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5RSd3171022; Wed, 30 Sep 2026 15:24:31 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5s5dtra-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE38sL3541488; Wed, 30 Sep 2026 15:24:30 GMT Received: from smtprelay05.wdc07v.mail.ibm.com ([172.16.1.72]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0hfpcetb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:30 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay05.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOSx932637480 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:29 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C4D4258060; Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4BFF15805F; Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:28 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=qQRgN5/l+DZ2WdLGO 7VRsp5H6wjMjRoWTc2ZH6ZeEjw=; b=mzNPIJTmiXW1MALxgecGCEMMB2z7l5Z04 gyiyF0Wtn2Z7L8O6jckFby/1QmRlf8fswpulr2tWUeKU9+WaJOky7U1y82HDJuqM pWGzV9/6gDU3YZW6OGYzTOjuUOF33aYrkm7LqzgYg+L1rrsm0bylsjBZr6ciRMao 93Ldq6USSXsnbpfEe2q/TZxY/MpIiNKJexcKUfko5sS0SYKZW9OSks+KLhr8u7ST f1V7f4n+v6QyJvQJXLzjyriiZFGRoBfD5qcJLuZGxbLWYV+5vcxjFZMB4/PMgkL7 fScInwor0HE0quoHnDDMs7a0Qf6sSbzKSAIBTwHOFzGN6hqPVWYSQ== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 12/23] pc-bios/s390-ccw: Add dynamic net header size handling Date: Wed, 30 Sep 2026 11:24:09 -0400 Message-ID: <20260930152420.1956230-13-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX3nVi/1qJWYjJ HvVJOH7XmQXZ/km5zVX5bD5Dk36ZQPzRB8wzuf9O8iqxdaLP2z3hSc2OD3YQbfL4jl4a1sQGpSA qcc9J3ZvBswGyEJyfPN2YDjU+FOm5ig= X-Authority-Analysis: v=2.4 cv=HJ5WhYtv c=1 sm=1 tr=0 ts=6abd29af cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=PJsyiqIXYuV6zaAqLSAA:9 X-Proofpoint-GUID: f0BHMlUfssIEeTZlnmlPzsmgNSp4P265 X-Proofpoint-ORIG-GUID: f0BHMlUfssIEeTZlnmlPzsmgNSp4P265 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX2v7BgdRyPJDk jZmlPb61b1UXVxscEpKDoyrwbX9k6+eksVDlDhi+yPB4jQjOd4ZcTcLwH0FUQEQqvB42krv8hFo 2r6A/JADZMMSDAfk5e5MafVTdZers2HJDDzF8KE9twvsjOKPEUJJo4WQA+VLLdkMYEscHak9ENX IU4rv6SQSisgtsEKBwRt6GPVws1kF3PDvsMWLwR0vxhniiMRgyLVHNIPItWVJ2EoJvue0jZB+1I evJdkIa7Wt/mk1RI/O2JgX3ShhOx5QZNlpx05PrOf6OysAzx2E7XKqwl+VB4O3RN3WOPDQsbIzE PQ9JCGeQ5/UitM6rTFH5GRj1azDSvMx6DgJ77O4ym+JLkLTRbc3VkgyBQG1MN1bAFBXbuLSEdt1 Xfu+fWJJsKjx/wgRycRnjrwSbdzVnRfaK+5FqnXe1Q6BSgFp/ACylM1MV1i8FUzc4nSX02zqAxX UrfCUkTrAZGGM4tnWKQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 suspectscore=0 bulkscore=0 clxscore=1015 lowpriorityscore=0 spamscore=0 impostorscore=0 phishscore=0 priorityscore=1501 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782049731158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai The virtio-net device used a fixed header size that did not account for the num_buffers field used in VirtIO 1.0. Use dynamic header sizing: 10 bytes for legacy mode and 12 bytes for VirtIO 1.0. This ensures correct packet handling across different VirtIO configurations. The VirtioNetHdr and VirtioNetHdrMrgRxbuf structures replicate the same field layout as struct virtio_net_hdr and struct virtio_net_hdr_mrg_rxbuf defined in include/uapi/linux/virtio_net.h. Signed-off-by: Zhuoying Cai Acked-by: Christian Borntraeger Reviewed-by: Jared Rossi Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-3-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- pc-bios/s390-ccw/virtio-net.c | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/pc-bios/s390-ccw/virtio-net.c b/pc-bios/s390-ccw/virtio-net.c index f58f7ffc55..7bb3f8f551 100644 --- a/pc-bios/s390-ccw/virtio-net.c +++ b/pc-bios/s390-ccw/virtio-net.c @@ -20,6 +20,7 @@ #include "s390-ccw.h" #include "virtio.h" #include "virtio-ccw.h" +#include "virtio-pci.h" #include "s390-time.h" #include "helper.h" =20 @@ -39,11 +40,21 @@ struct VirtioNetHdr { uint16_t gso_size; uint16_t csum_start; uint16_t csum_offset; - /*uint16_t num_buffers;*/ /* Only with VIRTIO_NET_F_MRG_RXBUF or VIRTI= O1 */ }; typedef struct VirtioNetHdr VirtioNetHdr; =20 +struct VirtioNetHdrMrgRxbuf { + struct VirtioNetHdr hdr; + uint16_t num_buffers; /* Only with VIRTIO_NET_F_MRG_RXBUF or VIRTIO1 */ +}; +typedef struct VirtioNetHdrMrgRxbuf VirtioNetHdrMrgRxbuf; + +/* Header sizes for different modes */ +#define VIRTIO_NET_HDR_SIZE_LEGACY sizeof(VirtioNetHdr) +#define VIRTIO_NET_HDR_SIZE_V1 sizeof(VirtioNetHdrMrgRxbuf) + static uint16_t rx_last_idx; /* Last index in receive queue "used" ring */ +static int virtio_net_hdr_size; =20 int virtio_net_init(void *mac_addr) { @@ -62,12 +73,16 @@ int virtio_net_init(void *mac_addr) return -1; } =20 + virtio_net_hdr_size =3D vdev->guest_features[1] & VIRTIO_F_VERSION_1 + ? VIRTIO_NET_HDR_SIZE_V1 + : VIRTIO_NET_HDR_SIZE_LEGACY; + memcpy(mac_addr, vdev->config.net.mac, ETH_ALEN); =20 for (i =3D 0; i < 64; i++) { - buf =3D malloc(ETH_MTU_SIZE + sizeof(VirtioNetHdr)); + buf =3D malloc(ETH_MTU_SIZE + virtio_net_hdr_size); IPL_assert(buf !=3D NULL, "Can not allocate memory for receive buf= fers"); - vring_send_buf(rxvq, buf, ETH_MTU_SIZE + sizeof(VirtioNetHdr), + vring_send_buf(rxvq, buf, ETH_MTU_SIZE + virtio_net_hdr_size, VRING_DESC_F_WRITE); } vring_notify(rxvq); @@ -77,14 +92,14 @@ int virtio_net_init(void *mac_addr) =20 int send(int fd, const void *buf, int len, int flags) { - VirtioNetHdr tx_hdr; + VirtioNetHdrMrgRxbuf tx_hdr; VDev *vdev =3D virtio_get_device(); VRing *txvq =3D &vdev->vrings[VQ_TX]; =20 /* Set up header - we do not use anything special, so simply clear it = */ memset(&tx_hdr, 0, sizeof(tx_hdr)); =20 - vring_send_buf(txvq, &tx_hdr, sizeof(tx_hdr), VRING_DESC_F_NEXT); + vring_send_buf(txvq, &tx_hdr, virtio_net_hdr_size, VRING_DESC_F_NEXT); vring_send_buf(txvq, (void *)buf, len, VRING_HIDDEN_IS_CHAIN); while (!vr_poll(txvq)) { yield(); @@ -108,13 +123,13 @@ int recv(int fd, void *buf, int maxlen, int flags) return 0; } =20 - len =3D rxvq->used->ring[rx_last_idx % rxvq->num].len - sizeof(VirtioN= etHdr); + len =3D rxvq->used->ring[rx_last_idx % rxvq->num].len - virtio_net_hdr= _size; if (len > maxlen) { puts("virtio-net: Receive buffer too small"); len =3D maxlen; } id =3D rxvq->used->ring[rx_last_idx % rxvq->num].id % rxvq->num; - pkt =3D (uint8_t *)(rxvq->desc[id].addr + sizeof(VirtioNetHdr)); + pkt =3D (uint8_t *)(rxvq->desc[id].addr + virtio_net_hdr_size); =20 #if DEBUG_VIRTIO_NET /* Dump packet */ int i; --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781997; cv=none; d=zohomail.com; s=zohoarc; b=Mg44DB1LHCX/U0jfQFTItMc8bj2Xm52XbstYLsBs6rEHo3jpc8SKL3T4pvAqIsXbZyBAzci0o+M+GWdsohlDlna56BNYHpHKASn6nmDapDtC/i6Auhd4eMLDustYVyE0IZj8KTSvxp9eCPEnXGHTLRmw/1xNs/OTvll/sN/OF7g= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781997; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=6L2iiAoz9OL5aGyrNfNlKZXj0OmSpZ2iShMOfi+djuM=; b=O+2vnd7T4S+CRd5AfO7Y+qBnOi+H6l58NaIIi5/Lud47mNe4+zHxnsR1z/S66+S/TAOJx/DGVyWQ+FHJx1DYopM/EjEZpccVRL7P+CXhgKs6jv0cprcINK215eG1JzLcTT/j3GydKn9BFklEIfu4gojbtHBrCS0XHxSf1pmWT2A= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781997412533.8963421974149; Wed, 30 Sep 2026 08:26:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAk-0008TK-TU; Wed, 30 Sep 2026 11:24:42 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAe-0008Jf-5Z; Wed, 30 Sep 2026 11:24:36 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAb-00021s-KG; Wed, 30 Sep 2026 11:24:35 -0400 Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5RSe3171022; Wed, 30 Sep 2026 15:24:32 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5s5dtrc-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE38Db3541491; Wed, 30 Sep 2026 15:24:30 GMT Received: from smtprelay06.wdc07v.mail.ibm.com ([172.16.1.73]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0hfpcetc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:30 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay06.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOTwJ27853406 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:29 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 627BD58062; Wed, 30 Sep 2026 15:24:29 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id DFBFE5805F; Wed, 30 Sep 2026 15:24:28 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:28 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=6L2iiAoz9OL5aGyrN fNlKZXj0OmSpZ2iShMOfi+djuM=; b=cuYvbagxDfN7UTHHwBLUCNgx2NsO31RDw lmEG4TEXbQKEhOBgQfFK0ELR8pOA5RRI7fa1UAbNEYXBI0v/3bEABr6jT3sHQvka uDQRYM973edqJRFNrU/glc4/Af90JYle7GHXiAqXyN0vdFE+J270azNNzDZ4F9qW ljE2XPLGqs7IAiXeDIQ74u6Pv5DDQb3XezxdGlz0mOSxXtrwp1bJyy5apP6S3pz+ f89V8h7cDhmcCffwpYhiuln94bdfgbfvV/CS3CT9R+OEBepNh6ga9Rz3+m5kbc2c /AQMzY4XLMCApcwhKPwLE/rjnvxSbWaoIySj9CBEe88AWXFrWBEaw== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 13/23] pc-bios/s390-ccw: Introduce virtio_tswap helpers Date: Wed, 30 Sep 2026 11:24:10 -0400 Message-ID: <20260930152420.1956230-14-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX426Q0xZnvazd jA2E+yPdrvzhcNZt+SlRiQ+p2d7IT+q4V7vN5GjjtPNbAsao7k+oKuTpb5Px3pCpEGTFf5PsgTv eCFCPGLVQ26LYJJxFsDg3S4YAfPj9oo= X-Authority-Analysis: v=2.4 cv=HJ5WhYtv c=1 sm=1 tr=0 ts=6abd29af cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=nmTm2IjeaI_QYA0BkewA:9 X-Proofpoint-GUID: EAAKisH_vAYT3TiBW_nBlHQNSHyAsG_D X-Proofpoint-ORIG-GUID: EAAKisH_vAYT3TiBW_nBlHQNSHyAsG_D X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXy4eBhMrnX8L8 AsuV6lJYJAumaQtYQhn8Eq1h3aUpRyB5ls74HPgd1Wsmf4vsdLarv/CS8UlyY22bHR2eo5vhYv8 ztjKSNRMICWy6NOzOoDenogYz+2QipFS9Te7KDY94Q6b8If1/h48LHO5GgLALSwzxyIwfgpjAe2 HEjYoY2AG9KgVE0OjzFTywQen3aPNJZ4UnoCXyMfrHcKfRNhCA9ljdt1vRrwJTQUJNGCnbciv8i 9d6VqiFb2jNWRerHh3ajLg/Aw4NYuhilWuHWUMLiKkxxhF8Jz7Et3OcZf61YYjaS9ZfuXZPFfW8 EN9lTf0NxgCnWC1NF+sJckWfhnPbchVo+issPhO956FKcwug0CEkPdy3YYCPAQpiChc+pGY6nth HRACW6cI2qe+z1ziewHdo72dHaIbSwkl7pTxcuNWnPwr24ECEZfpfEyw07kTA8GFixIFjFjG00a DfT+pz7aQEiRGF3J5yQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 suspectscore=0 bulkscore=0 clxscore=1015 lowpriorityscore=0 spamscore=0 impostorscore=0 phishscore=0 priorityscore=1501 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781999434158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai Replace the repeated pattern: be_ipl() ? x : bswapN(x) with helpers that conditionally byte-swap based on the virtio transport endianness. While only the 16-bit helper is used immediately, the 32-bit and 64-bit variants are added here for later use. Signed-off-by: Zhuoying Cai Reviewed-by: Jared Rossi Reviewed-by: Jason J. Herne Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-4-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- pc-bios/s390-ccw/virtio.c | 27 +++++++++++++++++++++------ pc-bios/s390-ccw/virtio.h | 4 ++++ 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/pc-bios/s390-ccw/virtio.c b/pc-bios/s390-ccw/virtio.c index 34c5e6ee22..8949e6c7c0 100644 --- a/pc-bios/s390-ccw/virtio.c +++ b/pc-bios/s390-ccw/virtio.c @@ -102,7 +102,7 @@ void vring_init(VRing *vr, VqInfo *info) vr->avail->idx =3D 0; =20 /* We're running with interrupts off anyways, so don't bother */ - vr->used->flags =3D be_ipl() ? VRING_USED_F_NO_NOTIFY : bswap16(VRING_= USED_F_NO_NOTIFY); + vr->used->flags =3D virtio_tswap16(VRING_USED_F_NO_NOTIFY); vr->used->idx =3D 0; vr->used_idx =3D 0; vr->next_idx =3D 0; @@ -143,6 +143,22 @@ bool be_ipl(void) } } =20 +/* Conditionally byte-swap between virtio-endian and s390x native big-endi= an. */ +uint16_t virtio_tswap16(uint16_t x) +{ + return be_ipl() ? x : bswap16(x); +} + +uint32_t virtio_tswap32(uint32_t x) +{ + return be_ipl() ? x : bswap32(x); +} + +uint64_t virtio_tswap64(uint64_t x) +{ + return be_ipl() ? x : bswap64(x); +} + /* * Format the virtio ring descriptor endianness * Return the available index increment in the appropriate endianness @@ -159,12 +175,11 @@ void vring_send_buf(VRing *vr, void *p, int len, int = flags) { uint16_t avail_idx; =20 - avail_idx =3D be_ipl() ? vr->avail->idx : bswap16(vr->avail->idx); + avail_idx =3D virtio_tswap16(vr->avail->idx); =20 /* For follow-up chains we need to keep the first entry point */ if (!(flags & VRING_HIDDEN_IS_CHAIN)) { - vr->avail->ring[avail_idx % vr->num] =3D be_ipl() ? vr->next_idx : - bswap16(vr->next= _idx); + vr->avail->ring[avail_idx % vr->num] =3D virtio_tswap16(vr->next_i= dx); } =20 vr->desc[vr->next_idx].addr =3D (unsigned long)p; @@ -182,7 +197,7 @@ void vring_send_buf(VRing *vr, void *p, int len, int fl= ags) /* Chains only have a single ID */ if (!(flags & VRING_DESC_F_NEXT)) { avail_idx++; - vr->avail->idx =3D be_ipl() ? avail_idx : bswap16(avail_idx); + vr->avail->idx =3D virtio_tswap16(avail_idx); } } =20 @@ -190,7 +205,7 @@ int vr_poll(VRing *vr) { uint16_t used_idx; =20 - used_idx =3D be_ipl() ? vr->used->idx : bswap16(vr->used->idx); + used_idx =3D virtio_tswap16(vr->used->idx); if (used_idx =3D=3D vr->used_idx) { vring_notify(vr); yield(); diff --git a/pc-bios/s390-ccw/virtio.h b/pc-bios/s390-ccw/virtio.h index aa307025e0..645dc288b1 100644 --- a/pc-bios/s390-ccw/virtio.h +++ b/pc-bios/s390-ccw/virtio.h @@ -287,6 +287,10 @@ int virtio_run(VDev *vdev, int vqid, VirtioCmd *cmd); int virtio_reset(VDev *vdev); int virtio_setup_ccw(VDev *vdev); =20 +uint16_t virtio_tswap16(uint16_t x); +uint32_t virtio_tswap32(uint32_t x); +uint64_t virtio_tswap64(uint64_t x); + /* virtio-net.c */ int virtio_net_init(void *mac_addr); void virtio_net_deinit(void); --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781958; cv=none; d=zohomail.com; s=zohoarc; b=kEdqZdZb1Atr1VH+xfy/14zPpGmjkUWjyVEw8peTSDBkQr+qDGh4sWAYMnIi1advnHKM+TmSFAv1nSLtLsH1+shxIhM1ZFx4g7W8bKmL7XE1ZhdxeTGSzSI2+fP2lXVD5Yd+Otno+bS9ZEJEGRML9RDv8mykZxBFj35DOgRt90E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781958; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=c32okVCOkmPAvk2v8vHyV1eP/8Mmrj3fceLNVBCS/vg=; b=ikGuf0QddHSt2JAvNbXk7ZjWCK5UINqrUulkBHWmdDKK2qMwvw6gJpUX49zS96ixgfOLAro2sdWrIGP2EIjv/BMqFeklFkGD5PaplDhqGAmE9vtOEIszixVWapBo6N6Jk70DzlHSYHmNtRqDwGiAMRN00iEBf0yrLMWbHcksJnY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781958187365.40017319622575; Wed, 30 Sep 2026 08:25:58 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAg-0008NT-Tt; Wed, 30 Sep 2026 11:24:38 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAd-0008Ir-I2; Wed, 30 Sep 2026 11:24:35 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAb-000220-GX; Wed, 30 Sep 2026 11:24:35 -0400 Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5T9i2986169; Wed, 30 Sep 2026 15:24:32 GMT Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx3fkd8b2-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE365o3605919; Wed, 30 Sep 2026 15:24:31 GMT Received: from smtprelay07.wdc07v.mail.ibm.com ([172.16.1.74]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gxsvhq2fd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay07.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOUDQ23593652 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:30 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0187F58065; Wed, 30 Sep 2026 15:24:30 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 805345805E; Wed, 30 Sep 2026 15:24:29 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:29 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=c32okVCOkmPAvk2v8 vHyV1eP/8Mmrj3fceLNVBCS/vg=; b=IWqJ0Ra5198ky/m/KNCBp6yATJ1GvITHS hB4nKko7k6v/Em28EMznyvqbYJLF+H4EwHXZu1+QnncnVzc+fGh95UtkzL+8Rd2E zzJpv5VtAPXOrJipdUjHTtFfLpXWtxVn+nkjgpYTL0PR+lxgq0VR4TgqLY20ZnjA /LlDvdEmk1UoJnkkWlmKBzrNmrYefXjJIFxOUe7vL2HCbY3oFy3AcOV7G+cxG291 psJYVXItTPGzpPzw4ecfu6J2KGAKzR1dnM7XRjTcPRQ2Di0tMDSu2Yya/p5DUqup R2MX/XjbHnAmTy3MsJdGEIuAwKXzCgc+B3bv/pKWUcDd97DZ8C9qA== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 14/23] pc-bios/s390-ccw: Add support for virtio-net-pci IPL Date: Wed, 30 Sep 2026 11:24:11 -0400 Message-ID: <20260930152420.1956230-15-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: w4wfVuonQZGVGiA7ejRECwHCvbrwynZz X-Proofpoint-GUID: w4wfVuonQZGVGiA7ejRECwHCvbrwynZz X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX8lxvg4TJjGfQ 56Llk4QmuDBIHB2VYgoYe1YsTa8sT/Alj5RloozMKcx4X0oCq8qSJglLVeX7KnjAcoOtY+wpqD5 sDBaufFc5lVngJRiXeBObFozSfIyqhY= X-Authority-Analysis: v=2.4 cv=Vv62kO2n c=1 sm=1 tr=0 ts=6abd29b0 cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=Y2IxJ9c9Rs8Kov3niI8_:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=ctsVLiZ_AAAA:8 a=Iu4lfvU6lRjo1WYjJIoA:9 a=3VCIHQLkQthbvTRuo98s:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX9iAaPMfpYeHE RGqHYg++iJmNcsWh2QyY6OjjA7LWx7vMJE18ovluAXWd7jQOM1GwHfzUwFIsBC2E2tmS74BKzUZ gI11SeVP4y5FQszbPzLwEbkAAVHkaAxMDPSyuyGeOIxeKiWB+6zK6C5OWvXvHIC+DxWQKoSuNPG 6l24NY683j/2c1DSM7dhmb7uMO+c0njckaEH5dplfoRqKta5tVb9w0MSa3EWCDqC0qhGmfrslju 0T5n9lsgTdaTyuI5evHIW6y0pGQjfiPa0BmU/SKOui0DRQA1GUjXS6sfI5XDhq11I4FZCbt+jWd MQHMjiKIU0IjW5CsZQAXAG6SdaR1wCPaiVF4qzAVV3bKFsahZY4fQmZEu2XaqYrmoXPi9/oqvgU 7BUFbWF0KzlcpJt52ndg04XaKED8q2IuunTe9mcCauIFKTCD7nQm2iImB/T7jdvVRDjuFMZdrpB f7d3Ot2dtk0rhvAAvXg== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 adultscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781959188158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai Enable network booting via virtio-net-pci by implementing PCI transport support for virtio-net. This patch also extends endianness handling for virtio PCI ring operations = in little-endian to ensure correct behavior on s390x. Signed-off-by: Zhuoying Cai Reviewed-by: Jared Rossi Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-5-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- pc-bios/s390-ccw/main.c | 2 ++ pc-bios/s390-ccw/netmain.c | 8 ++++++- pc-bios/s390-ccw/virtio-net.c | 41 ++++++++++++++++++++++++++++------- pc-bios/s390-ccw/virtio-pci.c | 20 +++++++++++++++++ 4 files changed, 62 insertions(+), 9 deletions(-) diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c index d2a2ac3138..b06d67c563 100644 --- a/pc-bios/s390-ccw/main.c +++ b/pc-bios/s390-ccw/main.c @@ -342,7 +342,9 @@ static void ipl_pci_device(void) return; } =20 + /* net, scsi, and block all intentionally use the same shared boot set= up */ switch (vdev->dev_type) { + case VIRTIO_ID_NET: case VIRTIO_ID_SCSI: case VIRTIO_ID_BLOCK: if (virtio_setup() =3D=3D 0) { diff --git a/pc-bios/s390-ccw/netmain.c b/pc-bios/s390-ccw/netmain.c index bcb62bf6ca..dd02c5c71f 100644 --- a/pc-bios/s390-ccw/netmain.c +++ b/pc-bios/s390-ccw/netmain.c @@ -498,7 +498,13 @@ int netmain(void) sclp_setup(); puts("Network boot starting..."); =20 - if (!virtio_ccw_net_setup()) { + /* + * CCW devices require subchannel enumeration here. + * PCI devices don't need specific net setup; the virtio-net-pci devic= es + * still follow the regular Virtio, PCI, and generic network setup. + */ + if (virtio_get_device()->ipl_type =3D=3D S390_IPL_TYPE_CCW && + !virtio_ccw_net_setup()) { puts("No valid virtio ccw net device found."); return -1; } diff --git a/pc-bios/s390-ccw/virtio-net.c b/pc-bios/s390-ccw/virtio-net.c index 7bb3f8f551..632ce059d6 100644 --- a/pc-bios/s390-ccw/virtio-net.c +++ b/pc-bios/s390-ccw/virtio-net.c @@ -66,7 +66,22 @@ int virtio_net_init(void *mac_addr) rx_last_idx =3D 0; =20 vdev->guest_features[0] =3D VIRTIO_NET_F_MAC_BIT; - virtio_ccw_setup(vdev); + switch (virtio_get_device()->ipl_type) { + case S390_IPL_TYPE_CCW: + if (virtio_ccw_setup(vdev)) { + puts("Setup failed for virtio-net-ccw"); + return -1; + } + break; + case S390_IPL_TYPE_PCI: + if (virtio_pci_setup(vdev)) { + puts("Setup failed for virtio-net-pci"); + return -1; + } + break; + default: + return -1; + } =20 if (!(vdev->guest_features[0] & VIRTIO_NET_F_MAC_BIT)) { puts("virtio-net device does not support the MAC address feature"); @@ -118,22 +133,30 @@ int recv(int fd, void *buf, int maxlen, int flags) VRing *rxvq =3D &vdev->vrings[VQ_RX]; int len, id; uint8_t *pkt; + uint16_t rx_used_idx, rx_avail_idx; + uint32_t rx_used_len, rx_used_id; + uint64_t rx_desc_addr; =20 - if (rx_last_idx =3D=3D rxvq->used->idx) { + rx_used_idx =3D virtio_tswap16(rxvq->used->idx); + if (rx_last_idx =3D=3D rx_used_idx) { return 0; } =20 - len =3D rxvq->used->ring[rx_last_idx % rxvq->num].len - virtio_net_hdr= _size; + rx_used_len =3D virtio_tswap32(rxvq->used->ring[rx_last_idx % rxvq->nu= m].len); + rx_used_id =3D virtio_tswap32(rxvq->used->ring[rx_last_idx % rxvq->num= ].id); + + len =3D rx_used_len - virtio_net_hdr_size; if (len > maxlen) { puts("virtio-net: Receive buffer too small"); len =3D maxlen; } - id =3D rxvq->used->ring[rx_last_idx % rxvq->num].id % rxvq->num; - pkt =3D (uint8_t *)(rxvq->desc[id].addr + virtio_net_hdr_size); + id =3D rx_used_id % rxvq->num; + rx_desc_addr =3D virtio_tswap64(rxvq->desc[id].addr); + pkt =3D (uint8_t *)(rx_desc_addr + virtio_net_hdr_size); =20 #if DEBUG_VIRTIO_NET /* Dump packet */ int i; - printf("\nbuf %p: len=3D%i\n", (void *)rxvq->desc[id].addr, len); + printf("\nbuf %p: len=3D%i\n", (void *)rx_desc_addr, len); for (i =3D 0; i < 64; i++) { printf(" %02x", pkt[i]); if ((i % 16) =3D=3D 15) { @@ -147,8 +170,10 @@ int recv(int fd, void *buf, int maxlen, int flags) memcpy(buf, pkt, len); =20 /* Mark buffer as available to the host again */ - rxvq->avail->ring[rxvq->avail->idx % rxvq->num] =3D id; - rxvq->avail->idx =3D rxvq->avail->idx + 1; + rx_avail_idx =3D virtio_tswap16(rxvq->avail->idx); + rxvq->avail->ring[rx_avail_idx % rxvq->num] =3D virtio_tswap16(id); + rx_avail_idx++; + rxvq->avail->idx =3D virtio_tswap16(rx_avail_idx); vring_notify(rxvq); =20 /* Move index to next entry */ diff --git a/pc-bios/s390-ccw/virtio-pci.c b/pc-bios/s390-ccw/virtio-pci.c index 277c3ea68d..eb47e7c534 100644 --- a/pc-bios/s390-ccw/virtio-pci.c +++ b/pc-bios/s390-ccw/virtio-pci.c @@ -56,6 +56,10 @@ void virtio_pci_id2type(VDev *vdev, uint16_t device_id) case 0x1004: vdev->dev_type =3D VIRTIO_ID_SCSI; break; + case 0x1041: + case 0x1000: + vdev->dev_type =3D VIRTIO_ID_NET; + break; default: vdev->dev_type =3D 0; } @@ -223,6 +227,17 @@ static int virtio_pci_get_scsi_config(void) return rc; } =20 +static int virtio_pci_get_net_config(void) +{ + VirtioNetConfig *cfg =3D &virtio_get_device()->config.net; + + /* + * Byte-swapping is not needed as only the MAC address (byte array) + * is used here. Byte-swap if other fields are added. + */ + return vpci_read_flex(d_cap.off, d_cap.bar, cfg, sizeof(VirtioNetConfi= g)); +} + static int virtio_pci_negotiate(void) { int i, rc; @@ -355,6 +370,7 @@ bool virtio_pci_is_supported(VDev *vdev) switch (vdev->dev_type) { case VIRTIO_ID_BLOCK: case VIRTIO_ID_SCSI: + case VIRTIO_ID_NET: return true; default: return false; @@ -414,6 +430,10 @@ int virtio_pci_setup(VDev *vdev) vdev->cmd_vr_idx =3D 2; virtio_pci_get_scsi_config(); break; + case VIRTIO_ID_NET: + vdev->nr_vqs =3D 2; + virtio_pci_get_net_config(); + break; default: puts("Unsupported virtio device"); return -ENODEV; --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781998; cv=none; d=zohomail.com; s=zohoarc; b=IIF2Q/t4it5HLRvRHqTEFqMU2BNNMt22SD/zW4FO+Ye30heSDicav7hy+34S9gV8fBYld/HziuOmArUvi5M4+zyRYVP9j10+LtxhQgv9Ycz7lEO86S5gFRzK/FbceIKhbo6zoZ9CwqVusZpCx1mzQJm5NbsmZJDcMsSb3QEv+E4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781998; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HmjDRCmXLlX0rDHYc5l+1fyuzzmFvfoB0Bp0OV8LH8g=; b=BRKi2d3pCtrg+9TxeVePMe7BC/xH01c3W/er3r3jYCFi3noBAux6SHOJar+Vez8DpKXlMNFNzNLq4QNjH1nLj79l3d+rCV4jcS8FhxXtFs3nq9d1l0Lktu7WENWlYRgol9bj+PvDqPv2RW0rQXDdWUz8tSBVGa8suwS1a7maQus= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781998699702.9031327533085; Wed, 30 Sep 2026 08:26:38 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAj-0008RY-12; Wed, 30 Sep 2026 11:24:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAe-0008Je-47; Wed, 30 Sep 2026 11:24:36 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAb-00022F-UL; Wed, 30 Sep 2026 11:24:35 -0400 Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5TPI2986162; Wed, 30 Sep 2026 15:24:32 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx3fkd8b4-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:32 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE36Xl3541465; Wed, 30 Sep 2026 15:24:32 GMT Received: from smtprelay07.wdc07v.mail.ibm.com ([172.16.1.74]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0hfpcetg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:32 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay07.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOUk531261374 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:31 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9A2165805A; Wed, 30 Sep 2026 15:24:30 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 1B4B85805E; Wed, 30 Sep 2026 15:24:30 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:30 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=HmjDRCmXLlX0rDHYc 5l+1fyuzzmFvfoB0Bp0OV8LH8g=; b=No+UslNcQwfKAfgIYdaySgPNhT1ScskiC /upnJ0YoEme3/kNg/q+ll4VzJQl3M0j8WgqbwFL8BoBySPr4SvHPIxYVngTTAKjE UAwIhYIrWGh/5uaBV4G1o85Eoj7eXGS15xGi95Cnm3BBpTjdTxubKF3dODBpzq+/ gKpg+4LLpEV8Ape2nAvdE4T7e/LSWYss5PMhHyIhZoIIMdRu/lxzCnONqnQsjzmd NLq7vsmeAluyjHIq7wWEf/IPQUUssNWWWc0jU29CPSvO3pTNEhJFNjADMBDctKns LSAyEcS6cVR6+y2KP/iPJV7iGW/KtLOp2D3CDz5el678UD6HFV0ZQ== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 15/23] hw/virtio: Add "loadparm" property to virtio net PCI devices booting on s390x Date: Wed, 30 Sep 2026 11:24:12 -0400 Message-ID: <20260930152420.1956230-16-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: ke5psvrIyST0Bd_-0YgIbXm8cnuMM4iy X-Proofpoint-GUID: ke5psvrIyST0Bd_-0YgIbXm8cnuMM4iy X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX9xaMNXHskIKj q9hlgv0nxGfYbI3OFkDaUK6C2vqYWKeZoj+z4kCsv3ZxyChDwHtCig5zAL27cjB30mtU/2OhhGK DsaIt21RYnxhf7Y3sv3nIEEZ2+PyAVc= X-Authority-Analysis: v=2.4 cv=Vv62kO2n c=1 sm=1 tr=0 ts=6abd29b0 cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=Y2IxJ9c9Rs8Kov3niI8_:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=Eyz2zE0sT3DR52bDYvwA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX/vZ4KFAWi/Nr /949SjVG80I7FXtmiaqShG8OrnyMjbnNLzjYTOKHT/ByCe7KsThnQWk++ESCYnGg+25X3ya4Ewe BmrlHbygc/VSxbrudTv3RaTZ5KycUPBoQ/V2/qy0a2rQ3bDmVpYuwbnXpx0tvborHJ46DfVoGuv D4RlPLY5LG7jXTl5juyhQ3apEaEJ1adcymEJ6YimpNQFddkUJBUeQFyajgapxY8CcjrsDbVyv+8 M2Hs1VjId1Sji3XItK3SjBs4gusgBBww/ZUYUaBdYaCRksDOcaJbE7z8oe8IxYc0pXzVcwOFnHd l161YjHAl0xvz4dS/OErkGYmIJ0hVljvNrKsxdwAxM13YIhWD5ACY2ixDZovCqYOCYD5O8vwc35 ouDrV0ES2eDzqIwI2MLmG+28TZiQd3VIOdgTKWr15TCnDpX2xS7/pOTkYdmp/EJ2cUYXKPYmRzo l5wBGpxs9NhMlTWFdDw== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 adultscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781999395158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai Add optional loadparm property to virtio-net-pci to allow boot entry selection on s390x, consistent with virtio-blk-pci. Signed-off-by: Zhuoying Cai Reviewed-by: Jared Rossi Reviewed-by: Jason J. Herne Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-6-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- hw/virtio/virtio-net-pci.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/virtio/virtio-net-pci.c b/hw/virtio/virtio-net-pci.c index fd3e0303f5..893d1905a9 100644 --- a/hw/virtio/virtio-net-pci.c +++ b/hw/virtio/virtio-net-pci.c @@ -77,6 +77,7 @@ static void virtio_net_pci_class_init(ObjectClass *klass,= const void *data) k->sriov_vf_user_creatable =3D true; set_bit(DEVICE_CATEGORY_NETWORK, dc->categories); device_class_set_props(dc, virtio_net_properties); + pci_qdev_property_add_specifics(dc); vpciklass->realize =3D virtio_net_pci_realize; } =20 --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781910; cv=none; d=zohomail.com; s=zohoarc; b=hRWJYhOk0ij6BTaJBgUmALxY8LDbEndrgWd/gaAggP9X63tXcWCx4jHW90jzDQq7pi/bZJGD8kfWfcdtkimH+tUNsWV3JP7sZnXsa1FBXRpGkZ8b9tVy9NFgZnTEwFMD61hKAA4o4UDfu3VSe0K6QFfIJZ9uLNq6Gb2Uue9kC+U= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781910; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ECdyu2CDFa/Yxbl6d6F9f8tzTbpoFlN2d50swpfDvtY=; b=JGkwfWER8MmAEAjsiKINQ/yT8zTIctiRVjpndn1vG4rmDWGew3S2hl98Yhjg8rdkHWJ0Ca4/B1Hr5SSJTkERqAD3ETCwKwhmShLneO89SnzYOgVBWR2gftm98/TMOyoL/RtWyIuiipeJf3bQ4cMCF/ho9TMN6nasxyVIn4NacpM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781910244216.41199126252127; Wed, 30 Sep 2026 08:25:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAi-0008RD-QQ; Wed, 30 Sep 2026 11:24:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAe-0008K0-BM; Wed, 30 Sep 2026 11:24:36 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAc-00022W-9Z; Wed, 30 Sep 2026 11:24:36 -0400 Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5o3x3167020; Wed, 30 Sep 2026 15:24:33 GMT Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5ptcv9e-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:32 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UEIG6P3569682; Wed, 30 Sep 2026 15:24:32 GMT Received: from smtprelay02.dal12v.mail.ibm.com ([172.16.1.4]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0xcs9n2t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:32 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay02.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOVIQ3146464 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:31 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 39F4D5805F; Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B50EE58060; Wed, 30 Sep 2026 15:24:30 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:30 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=ECdyu2CDFa/Yxbl6d 6F9f8tzTbpoFlN2d50swpfDvtY=; b=nZqmGG7XpRj0/Hf1z6v5/LPWK8a9KlpYI lguu7k33/e0KrgXMDuHVwXReUec2iGGSTum/sPxIHP2SfAHRyoVM7t13ak9zgxKM nYb38WMW06OYvQpzvAL8yX2sNvq/lyxQ2B0v/qieVT+Rgn9vUgajVMU49scYcMS/ 62jloy8vsuY3RBSduJ2Rm8sKdrgWSldmOonyM+Zak+m5tb3tWlq3TEvWRJVy4j+x cylp5Okde+Pn2o/YEinRysACsVNsnjRjd3UvXFtl+iPo74L7kYDCl4SiwDBcYG6B dLej2RqkYv4eDfN6wFg75PgfMDNbfQXFDbwUpRZ5npWm0mpNjVnEA== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 16/23] tests/qtest: Check s390x boot device support in pxe-test.c Date: Wed, 30 Sep 2026 11:24:13 -0400 Message-ID: <20260930152420.1956230-17-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: 1eUZYU2ZTls2SDxB_Tpwa4Nnu2gT-GtX X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX/gBLlzo3Kxuy 2TdKlTJpv4X45lzOy3yxwLikYfbQtdBvm5axuQZpx5QfxXnaW4Wl8lB0IqfRsPM0MXBJzKzxUWL gYm5SqMtpv3fCK6gh+H00EA1RNlOk2d96T873uoSkRlNMiBn55qAzKtkYitSnkR29D4QDhgYRmm 00IwVqElZb9aIa0ep+YtlAbBGjFwIvbWMq2NcbNDzhRO/D6hbh9aLR5V77SUoTowYHoFNwfUSeM hyk3R4bexYVEOSS8ZzAvqmFwFHzil0VWANusNZeF7VZPFY6hLNMBda6Q3MhsJotUbfRXIsqrzgx pKkJtAJ6/Y5LsFXiTQm7g72i596tP+Yul/cIlkkeb1lpJIocB+BJ2PrIplB1P/J0ATSIhRnYzRc aUAOOOfkkBdiOgHWr1LR9XW9BZRABvtMfdHfHhvgVoiVTf+ho8WfiOtfPNO5bD2tVtkx1uQW4Ld AmgOEOnA+Z0WW+1BuEA== X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX2pSIPhxTiZMQ JqztJ3/SXIpnECCUhQyKO/pslRjFpnRe3TX+UYAHCkZ+6Ju8jX+O0MIsjIQ7oYrOy7nbRXOaXAA jbga+Oo7CKslwRk2f2HDJExsQCzn5QM= X-Authority-Analysis: v=2.4 cv=EY5d0/mC c=1 sm=1 tr=0 ts=6abd29b0 cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=RzCfie-kr_QcCd8fBx8p:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=uBPJ6fAX7Dlw_A6SEmQA:9 X-Proofpoint-GUID: 1eUZYU2ZTls2SDxB_Tpwa4Nnu2gT-GtX X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 suspectscore=0 adultscore=0 clxscore=1015 malwarescore=0 impostorscore=0 spamscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781913316158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai The pxe test for a net device does not fail gracefully when the s390-ccw.img in use was built without support for booting that device. Add a boot_dev_support check that searches for a known string in the bios image to confirm boot support. If absent, the test is skipped gracefully instead of failing. Also re-enable pxe-test in qtests_s390x, which was accidentally removed by commit 973d97feca93. Signed-off-by: Zhuoying Cai Tested-by: Joshua Daley Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-7-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- tests/qtest/meson.build | 1 + tests/qtest/pxe-test.c | 85 ++++++++++++++++++++++++++++++++++++++++- 2 files changed, 85 insertions(+), 1 deletion(-) diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build index 33f58b0e95..341f6ad1ba 100644 --- a/tests/qtest/meson.build +++ b/tests/qtest/meson.build @@ -292,6 +292,7 @@ qtests_aarch64 =3D \ 'migration-test'] =20 qtests_s390x =3D \ + (slirp.found() ? ['pxe-test'] : []) + \ qtests_filter + \ ['boot-serial-test', 'drive_del-test', diff --git a/tests/qtest/pxe-test.c b/tests/qtest/pxe-test.c index e85dec5a4e..5c6415b936 100644 --- a/tests/qtest/pxe-test.c +++ b/tests/qtest/pxe-test.c @@ -26,6 +26,7 @@ typedef struct testdef { const char *machine; /* Machine type */ const char *model; /* NIC device model */ const char *extra; /* Any additional parameters */ + bool (*boot_dev_support)(void); /* optional: boot device support check= */ } testdef_t; =20 static testdef_t x86_tests[] =3D { @@ -58,8 +59,80 @@ static testdef_t ppc64_tests_slow[] =3D { { NULL }, }; =20 +static const char *s390_bios_load(gsize *len) +{ + static char *cached_contents; + static gsize cached_len; + const char *qemu_bin; + g_autofree char *cmd =3D NULL; + char dir[PATH_MAX]; + char *found =3D NULL; + char *path =3D NULL; + FILE *fp; + + if (cached_contents) { + g_test_message("Using cached bios contents"); + goto out; + } + + /* search the qemu binary's data directories for s390-ccw.img */ + qemu_bin =3D qtest_qemu_binary(NULL); + cmd =3D g_strdup_printf("%s -L help", qemu_bin); + fp =3D popen(cmd, "r"); + + if (!fp) { + g_error("Failed to run '%s'", cmd); + } + + while (fgets(dir, sizeof(dir), fp) && !found) { + dir[strcspn(dir, "\n")] =3D '\0'; + path =3D g_build_filename(dir, "s390-ccw.img", NULL); + if (g_file_get_contents(path, &cached_contents, &cached_len, NULL)= ) { + found =3D path; + } else { + g_free(path); + } + } + pclose(fp); + + if (!found) { + g_error("s390-ccw.img not found"); + } + + g_test_message("Loaded %s", found); + g_free(found); + +out: + *len =3D cached_len; + return cached_contents; +} + +static bool s390_bios_has_string(const char *needle) +{ + const char *contents; + gsize len; + bool found; + + contents =3D s390_bios_load(&len); + found =3D memmem(contents, len, needle, strlen(needle)) !=3D NULL; + + g_test_message("\"%s\" %s in bios", needle, found ? "found" : "not fou= nd"); + return found; +} + +static bool s390_bios_has_net_ccw(void) +{ + /* + * Assume that netboot support always includes virtio-net-ccw support. + * Check only that netboot code exists, rather than probing virtio-net= -ccw + * support directly. + */ + return s390_bios_has_string("Network boot starting..."); +} + static testdef_t s390x_tests[] =3D { - { "s390-ccw-virtio", "virtio-net-ccw" }, + { "s390-ccw-virtio", "virtio-net-ccw", + .boot_dev_support =3D s390_bios_has_net_ccw }, { NULL }, }; =20 @@ -90,6 +163,11 @@ static void test_pxe_ipv4(gconstpointer data) { const testdef_t *test =3D data; =20 + if (test->boot_dev_support && !test->boot_dev_support()) { + g_test_skip("The bios does not support booting this device"); + return; + } + test_pxe_one(test, false); } =20 @@ -97,6 +175,11 @@ static void test_pxe_ipv6(gconstpointer data) { const testdef_t *test =3D data; =20 + if (test->boot_dev_support && !test->boot_dev_support()) { + g_test_skip("The bios does not support booting this device"); + return; + } + test_pxe_one(test, true); } =20 --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781949; cv=none; d=zohomail.com; s=zohoarc; b=JCwiq5NzmOhF6Ggu5gD5+JV4jt8DU7HBBcgxO1kYxusIDDXE8cEASXFyQPeaDFQd/gSQmvxMxmI+7LdFVfo9YuRa7bQ6rYIcLpwaejOg+G50vBJ3F9LModlVWdwy7n+H7ThmEsGyZ+DuDVr3KRM68UChmVr5QdgFipuw0h1NYoI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781949; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=MQl01JvBsXek9vvfNPoqLJy9XoHBYqu7dbSk2K9FG04=; b=Zea8kv3i+vKDy/eLEGd2oABIdtTO57puRB+6nGh0OUMNkj1mddyiJRi0O6Zq6KYbjmL0OIEOq4r2cTTWURqi7efpwwypgvypO/wlUu5NHZsULeg2Or8knHTG83NKslu363+yPlqh+iSir3twnRtavyLrCcSfLIf9F51YPa6A3i0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781949653684.9946688778471; Wed, 30 Sep 2026 08:25:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAi-0008RE-Qe; Wed, 30 Sep 2026 11:24:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAe-0008KH-GV; Wed, 30 Sep 2026 11:24:36 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAc-00022i-QR; Wed, 30 Sep 2026 11:24:36 -0400 Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5VNN2986280; Wed, 30 Sep 2026 15:24:33 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx3fkd8b7-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:33 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE39Fi2287814; Wed, 30 Sep 2026 15:24:32 GMT Received: from smtprelay02.dal12v.mail.ibm.com ([172.16.1.4]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0q4pb3ju-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:32 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay02.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOVXB3146466 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:31 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id CCFB45805F; Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 546355805A; Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:31 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=MQl01JvBsXek9vvfN PoqLJy9XoHBYqu7dbSk2K9FG04=; b=hOKPk7Ye6qnSAPe92Hs/YrNDwweC25Weh 6XAQkxt9sSKSKaLsKckSyJy4UiicVF4nVVLuUOq/oADjvkXti1dCq1j01VXKtOuS 8rR4AyVvE++X7hz9wsndFvLqA3CK4ioWxM8Gm7xlJzEDM9VQP3NdhM7dc+3GTjnY OLNAfP357ddZIe8p7oEbvz+/r4FwhPhEY5YJrH5WW0JMxK+rDraTRQAekTVZm783 u8xyxvy5+7jQYId9fHWEGwRrEu8ckYPakvhctptkix1Tx2O2lbZnb3TVhezkxAmo rjGbN1rhXca0SVlyT/HCLo71GPZwN7F5e0sZ0wjZGrcuCsrLlgIAA== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 17/23] tests/qtest: Add s390x virtio net PCI test to pxe-test.c Date: Wed, 30 Sep 2026 11:24:14 -0400 Message-ID: <20260930152420.1956230-18-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: IQk7g8FsPC4Bic-9RgWTPA7lGlbCeUCh X-Proofpoint-GUID: IQk7g8FsPC4Bic-9RgWTPA7lGlbCeUCh X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX7LLC2pIgrPXi UbGtuwwdPdrZcpoUgF8TMWH+6PEY6hTUqgU5cinZKA8SgmabfMZF/HXVD8R1mTkGwXttu3VnbAA mB01+XZ0mMZJ2NXyiGfIi4pO28H1uJw= X-Authority-Analysis: v=2.4 cv=Vv62kO2n c=1 sm=1 tr=0 ts=6abd29b1 cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=Y2IxJ9c9Rs8Kov3niI8_:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=PkLLOfym-WlFbigP99UA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX+JoYWEqPw6Y1 pnn5kHu17/3oFlJv59sBY0604jIajP2JrySrcjVLVwQpLiSRgLpyj4Z5fq3MeekmnyyBzks1KcF KQXrQkm0oOx77dnpQ+Pc942v6zYpaVDmOQrhhWp1zA482ce+lNO2bjtnjVZpkcJeZQUFZJkDWQD M2yWelhK2EjH+yCdlRIDWvCac09IKC4zvrddN+R88c6aQUyFIRf04wbEQVTBtgg00CKQ5MZGWmD Xqawiqi6KGcLN+6r02cdwdNgN0W5nKZdG2sKHV9BpibMul0pHrguJ39iAQLO+zqnC/RWgmo+OGl sZIEk6A2W+mOy/hdKJGv78O9v80SiwfubLr6afbSaqEmw7rzfWzcvSAZ5GvmAfa7CSlr4RlQqwN LYDHRFlTDstXI2JtIQ19bQ5Qh3WCPsMMiXNDC+CVMjfXr4kK2K/TlB2ntu7Bm84ApkEzDXxvaou 448nDLBL5B9q3PbR1+A== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 adultscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781951085158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai Add test coverage for virtio-net-pci network booting on s390x by including it in the PXE test suite. The test verifies that PXE network booting works correctly with virtio-net-pci devices. Signed-off-by: Zhuoying Cai Tested-by: Joshua Daley Reviewed-by: Matthew Rosato Reviewed-by: Jared Rossi Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-8-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- tests/qtest/pxe-test.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/qtest/pxe-test.c b/tests/qtest/pxe-test.c index 5c6415b936..61c92a2df4 100644 --- a/tests/qtest/pxe-test.c +++ b/tests/qtest/pxe-test.c @@ -130,9 +130,20 @@ static bool s390_bios_has_net_ccw(void) return s390_bios_has_string("Network boot starting..."); } =20 +static bool s390_bios_has_net_pci(void) +{ + /* + * Check for a string unique to virtio-net-pci boot support in the bios + * to determine if the binary was built with support for this device. + */ + return s390_bios_has_string("Setup failed for virtio-net-pci"); +} + static testdef_t s390x_tests[] =3D { { "s390-ccw-virtio", "virtio-net-ccw", .boot_dev_support =3D s390_bios_has_net_ccw }, + { "s390-ccw-virtio", "virtio-net-pci", + .boot_dev_support =3D s390_bios_has_net_pci }, { NULL }, }; =20 --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782029; cv=none; d=zohomail.com; s=zohoarc; b=jANn7L8JMzKCKGLchZF9TbTBASjlo9QiVT0iOJFa07pNO8sy82KS2dJD5UuoxqrGVchTRHCKiD32e6y0OAlWij5r+OMJfPjw3gA6OOz/1hsrQu3Fd/tL2qxVzF5+RtP3SGrLssLW6WcKmoZzWMkrGv0nxRozZrzFT/eIrYPOwE8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782029; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=V/FAZHgeAXRB73gHKLtT4uZ4CdscjUcH9AXGODgMCcU=; b=DXtoB+4wFRCYW8Z57aZ4+RbPtdrXNAxc0S+wGLYavUwoTB8OZVrQFVmpw97BNKVc5WemN+0xwYCl/EyLneBMgURFr+2+lxBJQQMcYwFIhbBmPyiMdTh1jkgVYE3qANyQYS58dli1X0DbuHFeor5T047tenTQ2p2ZLR6YQ9B8fAY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782029891764.8270396614752; Wed, 30 Sep 2026 08:27:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAj-0008SF-Ak; Wed, 30 Sep 2026 11:24:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAf-0008ME-Uw; Wed, 30 Sep 2026 11:24:38 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAd-000234-Qs; Wed, 30 Sep 2026 11:24:37 -0400 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5QJ11932696; Wed, 30 Sep 2026 15:24:34 GMT Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx4fecyfa-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE38TC2287805; Wed, 30 Sep 2026 15:24:33 GMT Received: from smtprelay05.dal12v.mail.ibm.com ([172.16.1.7]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4h0q4pb3jw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:33 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay05.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOW4Y24707734 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:32 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 6B1FD5805F; Wed, 30 Sep 2026 15:24:32 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E7C335805A; Wed, 30 Sep 2026 15:24:31 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:31 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=V/FAZHgeAXRB73gHK LtT4uZ4CdscjUcH9AXGODgMCcU=; b=KU3vhNo5LzIFgnY0W6zy0PHe1EThQ7qh2 Gl+TxuwGtCa0F4TxtzAnW8qNqI/LbfgCNtKnf8ZxY8K9lvDmlXaC2B3B8Y/JoWGs a3mDJWQEJ3nncpbSByY1+nV9OpvNmMmdjh3enddjvgOJp4kMpX8ZL+ei6i7BNLLH 9IX2JERzEYrOqisC+pqLR/c2GimUtQFZl+wnNQo4KYm8TN7R6E0Ln3/VszCxrf7k oE7ZdzAFly3lIfq8nokyZo+VBcWcd0zG+J9vkTwpGajMCdNzCWZQCkNMgLZBSNjX Gm30iGVkjZR4YVHIbCo6fPIhfMgiYkL1XrnIAIVZ4r0wcik52M+8g== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Zhuoying Cai , Eric Farman Subject: [PULL 18/23] tests/functional/s390x: Add tests for virtio net PCI in test_pxelinux.py Date: Wed, 30 Sep 2026 11:24:15 -0400 Message-ID: <20260930152420.1956230-19-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=FYWiV5+6 c=1 sm=1 tr=0 ts=6abd29b2 cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=Z6bpV0tWmYslb40Kif8A:9 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX2y0BzEquyTnc CyyJO2gc93Xn901W0P87gEwIoaN/nTm0Y/JvFdXspskLrGjwxbDu4U9Pe+ivbe65+8O0M/x0o4Q sRVCfkPNKPfDIcgVsb29TlyZSZgOyjw= X-Proofpoint-ORIG-GUID: HvQ3hHwze9UwIdUYKQlrLXmTFg-hXCGh X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX9HXnsi1EN3Sj dIgHJ87nQLiTCKzIzbHv2qTj0KdrAhgFdqAMhNIF8onyGp8AAB1K3E4jSd97Un73bXrotQ0A61Y p4sEXPCR4n+alZ5dLl5EsK5o6LhwEmC1D7SvvVRw4T9m4INpQGuZnURyQ0Y3VnQUWaqqOtmN+4X +HU+HRI6KoNa2Y02OSL3CS47LbGFS1KHxWMN6mf6s9S906fAoBCYkyFukC8b81Qgn5mANI22CI1 VNCuyIcaNWXZpSmOhnh/oH/ZTrYElXIhLjGeG8VP8ayfwRjgf/D8EKR+arywPBqeXLwTMHvxjrD waC7AgiFw0YM3FlXNI/Vi2tUHblBrjlvZvoGaj66dOtSNbgVlXQKkUDfUx1dAN/+tekY75A91ri LTr7PcM5uEold/hAXvGbqxmJjjXPSc+f1i+dY5aOBtCCLaKIv7LgW/Fmuaq61kTCjolvkHEeauz W1ogijPxHI0fiLYOHqQ== X-Proofpoint-GUID: HvQ3hHwze9UwIdUYKQlrLXmTFg-hXCGh X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 impostorscore=0 spamscore=0 phishscore=0 priorityscore=1501 malwarescore=0 bulkscore=0 lowpriorityscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782031814158500 Content-Type: text/plain; charset="utf-8" From: Zhuoying Cai Add test coverage for virtio-net-pci network booting on s390x by extending the pxelinux functional tests. This patch adds PCI variants of all existing pxelinux tests to verify that virtio-net-pci devices work correctly for network booting. Signed-off-by: Zhuoying Cai Tested-by: Joshua Daley Reviewed-by: Matthew Rosato Reviewed-by: Jared Rossi Link: https://lore.kernel.org/qemu-devel/20260924222949.147720-9-zycai@linu= x.ibm.com Signed-off-by: Eric Farman --- tests/functional/s390x/test_pxelinux.py | 71 ++++++++++++++++++++----- 1 file changed, 59 insertions(+), 12 deletions(-) diff --git a/tests/functional/s390x/test_pxelinux.py b/tests/functional/s39= 0x/test_pxelinux.py index c00cce6a5a..5ce42aa074 100755 --- a/tests/functional/s390x/test_pxelinux.py +++ b/tests/functional/s390x/test_pxelinux.py @@ -50,7 +50,8 @@ class S390PxeLinux(QemuSystemTest): '/images/kernel.img'), '480859574f3f44caa6cd35c62d70e1ac0609134e22ce2a954bbed9b110c06e0b') =20 - def pxelinux_launch(self, pl_name=3D'default', extra_opts=3DNone): + def pxelinux_launch(self, pl_name=3D'default', extra_opts=3DNone, + dev=3D'virtio-net-ccw'): '''Create a pxelinux.cfg file in the right location and launch QEM= U''' self.require_netdev('user') self.set_machine('s390-ccw-virtio') @@ -74,7 +75,7 @@ def pxelinux_launch(self, pl_name=3D'default', extra_opts= =3DNone): with open(cfg_fname, 'w', encoding=3D'utf-8') as f: f.write(PXELINUX_CFG_CONTENTS) =20 - virtio_net_dev =3D 'virtio-net-ccw,netdev=3Dn1,bootindex=3D1' + virtio_net_dev =3D f'{dev},netdev=3Dn1,bootindex=3D1' if extra_opts: virtio_net_dev +=3D ',' + extra_opts =20 @@ -85,9 +86,9 @@ def pxelinux_launch(self, pl_name=3D'default', extra_opts= =3DNone): self.vm.launch() =20 =20 - def test_default(self): + def do_test_default(self, dev): '''Check whether the guest uses the "default" file name''' - self.pxelinux_launch() + self.pxelinux_launch(dev=3Ddev) # The kernel prints its arguments to the console, so we can use # this to check whether the kernel parameters are correctly handle= d: wait_for_console_pattern(self, 'testoption=3Dteststring') @@ -95,36 +96,82 @@ def test_default(self): wait_for_console_pattern(self, 'Unpacking initramfs...') wait_for_console_pattern(self, 'Run /init as init process') =20 - def test_mac(self): + def do_test_mac(self, dev): '''Check whether the guest uses file name based on its MAC address= ''' self.pxelinux_launch(pl_name=3D'01-02-ca-fe-ba-be-42', - extra_opts=3D'mac=3D02:ca:fe:ba:be:42,loadpar= m=3D3') + extra_opts=3D'mac=3D02:ca:fe:ba:be:42,loadpar= m=3D3', + dev=3Ddev) wait_for_console_pattern(self, 'Linux version 5.3.7-301.fc31.s390x= ') =20 - def test_uuid(self): + def do_test_uuid(self, dev): '''Check whether the guest uses file name based on its UUID''' # Also add a non-bootable disk to check the fallback to network bo= ot: self.vm.add_args('-blockdev', 'null-co,size=3D65536,node-name=3Dd1= ', '-device', 'virtio-blk,drive=3Dd1,bootindex=3D0,l= oadparm=3D1', '-uuid', '550e8400-e29b-11d4-a716-446655441234') - self.pxelinux_launch(pl_name=3D'550e8400-e29b-11d4-a716-4466554412= 34') + self.pxelinux_launch(pl_name=3D'550e8400-e29b-11d4-a716-4466554412= 34', + dev=3Ddev) wait_for_console_pattern(self, 'Debian 4.19.146-1 (2020-09-17)') =20 - def test_ip(self): + def do_test_ip(self, dev): '''Check whether the guest uses file name based on its IP address'= '' self.vm.add_args('-M', 'loadparm=3D3') - self.pxelinux_launch(pl_name=3D'0A00020F') + self.pxelinux_launch(pl_name=3D'0A00020F', dev=3Ddev) wait_for_console_pattern(self, 'Linux version 5.3.7-301.fc31.s390x= ') =20 - def test_menu(self): + def do_test_menu(self, dev): '''Check whether the boot menu works for pxelinux.cfg booting''' self.vm.add_args('-boot', 'menu=3Don,splash-time=3D10') - self.pxelinux_launch(pl_name=3D'0A00') + self.pxelinux_launch(pl_name=3D'0A00', dev=3Ddev) wait_for_console_pattern(self, '[1] Nonexisting') wait_for_console_pattern(self, '[2] Debian') wait_for_console_pattern(self, '[3] Fedora') wait_for_console_pattern(self, 'Debian 4.19.146-1 (2020-09-17)') =20 + def test_default_ccw(self): + '''pxelinux.cfg "default" lookup via virtio-net-ccw''' + self.do_test_default('virtio-net-ccw') + + def test_default_pci(self): + '''pxelinux.cfg "default" lookup via virtio-net-pci''' + self.require_device('virtio-net-pci') + self.do_test_default('virtio-net-pci') + + def test_mac_ccw(self): + '''pxelinux.cfg MAC-address-based file lookup via virtio-net-ccw''' + self.do_test_mac('virtio-net-ccw') + + def test_mac_pci(self): + '''pxelinux.cfg MAC-address-based file lookup via virtio-net-pci''' + self.require_device('virtio-net-pci') + self.do_test_mac('virtio-net-pci') + + def test_uuid_ccw(self): + '''pxelinux.cfg UUID-based file lookup via virtio-net-ccw''' + self.do_test_uuid('virtio-net-ccw') + + def test_uuid_pci(self): + '''pxelinux.cfg UUID-based file lookup via virtio-net-pci''' + self.require_device('virtio-net-pci') + self.do_test_uuid('virtio-net-pci') + + def test_ip_ccw(self): + '''pxelinux.cfg IP-address-based file lookup via virtio-net-ccw''' + self.do_test_ip('virtio-net-ccw') + + def test_ip_pci(self): + '''pxelinux.cfg IP-address-based file lookup via virtio-net-pci''' + self.require_device('virtio-net-pci') + self.do_test_ip('virtio-net-pci') + + def test_menu_ccw(self): + '''pxelinux.cfg interactive boot menu via virtio-net-ccw''' + self.do_test_menu('virtio-net-ccw') + + def test_menu_pci(self): + '''pxelinux.cfg interactive boot menu via virtio-net-pci''' + self.require_device('virtio-net-pci') + self.do_test_menu('virtio-net-pci') =20 if __name__ =3D=3D '__main__': QemuSystemTest.main() --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781928; cv=none; d=zohomail.com; s=zohoarc; b=mmQqs3i/ZH8nXLeSiJKITNc1XXSUJjAljFdSPoRcLFonxjRxAQaWdiNn8RnhtwBrAY1ffrlL9g459xRasu5rneG/ldhAzz3qiwrub0JIrUCYnczirsSHrEe+DRGkpjCzF5Q8ji4VNxHlO9erm81Dhy6j6hkUUrY9upqX94uRDe0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781928; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=FtTb0mW5MWM1J2gT4xydNoipirPw7WYwXKq6Lc/xJCg=; b=CRKWK7eEyGFpYjrvLVyZb/ZoyEJdeJ43S72Q6i/P8uDyK3OeMSe1mG35ckEGoNvCx3VYU/i9dkBdE290OWj7lizinMcHug12Y8JZpHcK9pW0Vr+Q1IBpGdHTv374yEmULGfQxOGvRDrzZJ0+KQb86/K7rXgEcjIgp9m1vSTZI28= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781928698731.4582248349533; Wed, 30 Sep 2026 08:25:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwB1-0000Aa-Px; Wed, 30 Sep 2026 11:25:00 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAz-00009e-I5; Wed, 30 Sep 2026 11:24:57 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAy-00023D-06; Wed, 30 Sep 2026 11:24:57 -0400 Received: from pps.filterd (m0356516.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5TTs2986176; Wed, 30 Sep 2026 15:24:34 GMT Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx3fkd8be-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE38TY3605933; Wed, 30 Sep 2026 15:24:34 GMT Received: from smtprelay06.dal12v.mail.ibm.com ([172.16.1.8]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gxsvhq2fh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay06.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOXbo31326972 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:33 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0938558060; Wed, 30 Sep 2026 15:24:33 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 85F6C5805A; Wed, 30 Sep 2026 15:24:32 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:32 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=FtTb0mW5MWM1J2gT4 xydNoipirPw7WYwXKq6Lc/xJCg=; b=bRSjrxAevpvjxYDDeDrMZYzl1QD0yIoPp V4uedqzPRZXQQJWJHO2XrjxnAEe0W7wvpF6YoHCRunmGo1rSqilJ5iV6f2KUbUuI cvGO3gbmKFY1HnWomHpUBy/6JMsQkXUsLc025vFxKAm0VTR3K89+l+mvfXRF1OuK IxrBLW77zZEo/qlwtB/8oHKWM1y4JbTI9PGpTLZxnj3boQ3X5dG7h8gmEr9Dl813 BPen+Xy2WGnQI5Y9i36JkehuVg3f9KtjLEuwhaNGzymFPD96a1sFoIIVfHH8gStM DRIstLRnYR8xpgO3pBQRdnyAugN7lufC2+9X3ASFzGvNz2dqtF83w== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Maximilian Immanuel Brandtner , Eric Farman Subject: [PULL 19/23] s390x/sclpconsole: fix indentation for console_reset Date: Wed, 30 Sep 2026 11:24:16 -0400 Message-ID: <20260930152420.1956230-20-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: isOp7K1Xdx3qyA1VAC7dYDKr5hwSAHYW X-Proofpoint-GUID: isOp7K1Xdx3qyA1VAC7dYDKr5hwSAHYW X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX0UT/AP3TWNoF DrPXClsJEP2nyctKDiumEAfmD6ARR2+DWacIMr9Ua8sigCZ3aq5DefQPlbcu8nwSAS6cxRDenqM LOyMut8AC3u7H7SbSYejz0M6iXfJvVA= X-Authority-Analysis: v=2.4 cv=Vv62kO2n c=1 sm=1 tr=0 ts=6abd29b2 cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=Y2IxJ9c9Rs8Kov3niI8_:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=og5TcVbNlwXT-lVP8TsA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX9BOsqODnyQHx Wual42JQ2Bn1HIg7hqZZ4SXwaD1HQxissxwkrcbp1a4HAqCK5YOTai7PAG5udTxrXlV2nfWw2PG 9ikvqjim/fb8bKZf26K27ZTu9qemUojnJh4tDXb0nd/RgPCDWJSNyk2LFLKzFxZQg7TvhhMMmIR 8ovBEQsuL5mMyj3b/5wHXs86m5KiVT5A4j0eviDUlQo2FzCqmBlBNMKD4v92U1Fv4634dy0l06j GETxQcm5gZwSX9xkrueXf6K1P3gFbBDkz9Ot0Odc6IJ7s3455g1/iaJlXRHREVScBa/cFLFv263 89lpaqFKqjKaXI8AveyI1tDHN9UqsL03LbFCFemIAgiQWsWyetvE1sLou+X3fnvImFkJcpdUPqE xty3fEIhDbX4UqccQX+IyGNby6B8L+9DDm6kRe0lgkAtQBVJRoGB+W7trUigj5Wcec+qBrqwguO pkZBauXxGizYFqJgahA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 spamscore=0 phishscore=0 bulkscore=0 adultscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781930941158500 Content-Type: text/plain; charset="utf-8" From: Maximilian Immanuel Brandtner Adjust indentation to match the rest of the file. No functional change intended. Signed-off-by: Maximilian Immanuel Brandtner Reviewed-by: Matthew Rosato Link: https://lore.kernel.org/qemu-devel/20260929152012.2696005-2-maxbr@lin= ux.ibm.com Signed-off-by: Eric Farman --- hw/char/sclpconsole.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/hw/char/sclpconsole.c b/hw/char/sclpconsole.c index 179d12745c..1ad39084d3 100644 --- a/hw/char/sclpconsole.c +++ b/hw/char/sclpconsole.c @@ -240,15 +240,15 @@ static int console_init(SCLPEvent *event) =20 static void console_reset(DeviceState *dev) { - SCLPEvent *event =3D SCLP_EVENT(dev); - SCLPConsole *scon =3D SCLP_CONSOLE(event); - - event->event_pending =3D false; - scon->iov_sclp =3D 0; - scon->iov_bs =3D 0; - scon->iov_data_len =3D 0; - scon->iov_sclp_rest =3D 0; - scon->notify =3D false; + SCLPEvent *event =3D SCLP_EVENT(dev); + SCLPConsole *scon =3D SCLP_CONSOLE(event); + + event->event_pending =3D false; + scon->iov_sclp =3D 0; + scon->iov_bs =3D 0; + scon->iov_data_len =3D 0; + scon->iov_sclp_rest =3D 0; + scon->notify =3D false; } =20 static const Property console_properties[] =3D { --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782009; cv=none; d=zohomail.com; s=zohoarc; b=i+YoWowcaLVR41enX/boEaCwNepszwaIF8GOh2tP+eFmmHjf5bl8YYkE63900KCNmX+jGyE/CDTEpn/bAO7wNH5fuuhvqcgU0fTshjHuPZ72KteZ6EZ2mDYz9Ota9XHk2wAgPNfaoeXlz2gOA50rw6SuaLBzYBrGzHKrx4oijVk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782009; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=59PE50OUkZ7LnaCIas2XOlMzSs9lg0pOQ9hAOdm/Zbw=; b=kissEWrNo2b+2WHNDwa5PmQrBoS2FX6aoypJdRQLPGHIj17/yOC1YEA5p4dE0Jvj9yzY5Jx5Y2ePGDFHEIlVZidcgGw7rb56KENJ2lcw85cTrZgbYqJpoRHQkkRt2oxfXEiE/P5QGnt/IUrPJnDko8vug8idhSMncOUGH9DPe1s= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782009346910.5108910127742; Wed, 30 Sep 2026 08:26:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAj-0008So-Md; Wed, 30 Sep 2026 11:24:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAh-0008PP-O5; Wed, 30 Sep 2026 11:24:39 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAf-00023q-Te; Wed, 30 Sep 2026 11:24:39 -0400 Received: from pps.filterd (m0353729.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE64HB1337364; Wed, 30 Sep 2026 15:24:36 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5qrdtwq-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:35 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE34Ct3541449; Wed, 30 Sep 2026 15:24:34 GMT Received: from smtprelay06.dal12v.mail.ibm.com ([172.16.1.8]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0hfpcetm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay06.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOXOQ31326974 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:33 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 99CD458060; Wed, 30 Sep 2026 15:24:33 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 257D65805A; Wed, 30 Sep 2026 15:24:33 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:33 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=59PE50OUkZ7LnaCIa s2XOlMzSs9lg0pOQ9hAOdm/Zbw=; b=D9nVpSUC/e925yTKOhsRhldz+vsqaj/aQ UlsalF0C5UjWGlCvxJs2ol7k/lmRNUTSH9cZ9w1r2o0fGHw6p17tD+eokY5FyIEv 5ohGs9NA5k7Lq91eEQvUh4z0OBnpD8mYRnmbxHBzbThB26cG2kZrTykr2KMsnuPt 5NfzXWhmjYIXRxs/MaoIVPWutZeyaH2RTg26xjdKhxibPOdyTGewzuq1rqIQ1tXD HQCAMW+M9yRt+gCpAUronSWMVxtMX4Ikl0Fo8HSmoPNEe5np+JiBNt7C1QlYdT4k jCCG6WjP996isG44BkWtuSpo/WkbZCOJ7qTRHgRzxZZBdfCgGvm3A== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , qemu-stable@nongnu.org, Eric Farman Subject: [PULL 20/23] s390x/pci: Fix frame stepping in rpcit_service_call() Date: Wed, 30 Sep 2026 11:24:17 -0400 Message-ID: <20260930152420.1956230-21-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfXzL4Q+7P28VUQ 0Vt1rs1S4rFCVNe//bFHkQwiFeeVXXL1lUpnkoYoKTbLQbdzYvQy3O4PjPr8UDHmfwWqwFw4TfZ +QNb4EmxHJIxookIilT3utsekxS9WUGbgku7oafe7DEOrTDbK3RLudW5bTZZTBKy+rC37R/2j5z hu0UFScksQ7IQrFPfhh4gpBszXeeUHvFCC9kISJH2hgBCnl2TK616IsNbSaPDEtYNxFL+nF/d/H QZaccATNEctjU38JxL+Iju438YYLeQjttSgJz9bWbrgfRryBwQ9o9/JBblyn100LgiCFOkIOHQy 81OHB7C+tvt8L+Hzf5zQd3LhjRQFWIQnQcAmNqXYNYpVgh6jzrw6mHr6g30AbhF1PpqJlHAW87y 1Z9sK031XFNRgPiuKeXFL7XejNkBwALckF7t7cjvhJjNl6BNge/iBGJ5S5F0z1fu8tqkC2yfUBg 4kHl0S7OdHvG9lcPZ1Q== X-Authority-Analysis: v=2.4 cv=SPbXx+vH c=1 sm=1 tr=0 ts=6abd29b3 cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=uAbxVGIbfxUO_5tXvNgY:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=MMuBV-PD9cgeK7xIxbcA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-ORIG-GUID: pSpXFLrjQAP_F_v-Ee1D7Vu3jPWJCtsz X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX94513+F8kx3M vdxZ9TFb8LWFmBOkNZTPnT42YABIbOReCMXgmy5bSa7CmBkT02nFc+ZLogokRgUu3N01M1gqen5 QtyYi0IFzSzyRhEYtHtZHPmU3/h2QwQ= X-Proofpoint-GUID: pSpXFLrjQAP_F_v-Ee1D7Vu3jPWJCtsz X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 suspectscore=0 clxscore=1015 spamscore=0 lowpriorityscore=0 malwarescore=0 adultscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782011540158500 Content-Type: text/plain; charset="utf-8" From: Matthew Rosato When walking the guest IO address table, an invalid segment or region entry causes table_translate() to return entry.len equal to the frame size for that table level (1 MiB for ST, 2 GiB for RT). Adding entry.len directly to start only advances to the correct next frame boundary if start is already frame-aligned at that level -- which is true for a well-behaved Linux guest but not a general requirement. Add logic to advance start to the next frame boundary rather than simply adding entry.len. For a frame-aligned start (the typical, well-behaved case) the result is identical. Fixes: 0125861eacc3 ("s390x/pci: fixup the code walking IOMMU tables") Cc: qemu-stable@nongnu.org Signed-off-by: Matthew Rosato Reviewed-by: Eric Farman Reviewed-by: Farhan Ali Link: https://lore.kernel.org/qemu-devel/20260929153012.774530-2-mjrosato@l= inux.ibm.com Signed-off-by: Eric Farman --- hw/s390x/s390-pci-inst.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c index 652e1712ec..bac813fb6a 100644 --- a/hw/s390x/s390-pci-inst.c +++ b/hw/s390x/s390-pci-inst.c @@ -808,7 +808,8 @@ int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_= t r2, uintptr_t ra) coalesce =3D 0; } =20 - start +=3D entry.len; + /* Advance to next frame boundary if start was not frame-aligned */ + start =3D QEMU_ALIGN_UP(start + 1, entry.len); while (entry.iova < start && entry.iova < end) { if (dma_avail > 0 || entry.perm =3D=3D IOMMU_NONE) { dma_avail =3D s390_pci_update_iotlb(iommu, &entry); --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781940; cv=none; d=zohomail.com; s=zohoarc; b=PaTZeVAzFNAxWNR8p1/cWGlAgCopl7ImPMuDONpLSN+m8/etNepz+D9bY1PdA+0hprx5+8fDO1P0Ibq4vfOdpt9aokf5UGSQUOCR+u5cbjabGnnNnknFfHU4iiWTOVrSsT+GHQk32ZMsOQMWTSTzuxEoYCuzTVAAAoxGtuypyCk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781940; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=WGKDOwyAAbz/W13ZPyY7RdkOhMc5m4fhhHfWqigi4bo=; b=Uh9XWA1FwEeB4GOLsOiLC+YErhJq4TUMMIG3AQFBvogo7xqSqbHMQ8QKmHxB4OaMoiJWYonVcZI6oztWkgSm/waDC6jpoIztngS1DrYwoyn1kHhPs8wJTuayi2A+Rvj5OGlmQkpV55nFX+cOXRMH/YC2oYdTmbAoYH7xw8GM5Ug= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781940957141.42528441485274; Wed, 30 Sep 2026 08:25:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwAl-0008TV-13; Wed, 30 Sep 2026 11:24:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAi-0008Pf-51; Wed, 30 Sep 2026 11:24:40 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwAg-00023y-FJ; Wed, 30 Sep 2026 11:24:39 -0400 Received: from pps.filterd (m0360083.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5SY23203201; Wed, 30 Sep 2026 15:24:36 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5j5dykp-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:36 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE38sO3541488; Wed, 30 Sep 2026 15:24:35 GMT Received: from smtprelay07.dal12v.mail.ibm.com ([172.16.1.9]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0hfpcetr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:35 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay07.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOYBb20120206 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:34 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3870358062; Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B6D385805A; Wed, 30 Sep 2026 15:24:33 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:33 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=WGKDOwyAAbz/W13ZP yY7RdkOhMc5m4fhhHfWqigi4bo=; b=r16noxJ3KScsrDllUJi+tJNKAn++RSvNq th0s6jhabkzmlw1lcA1TWeCJ8yRdzr4Qb2B4aUZOWr9BxeSh5thlfMwRIEyJkYbA lqo9X2CT79OHC2tCMvfUkCzOB2ZFrQBNQHhP7hAFxZ/r5WtGj5d2DIMG83j3tieC U+2v2zXp0vhrDQcYwSAk2aoeUkxUxCyb8EXFAYieLRA65LbRu2E4wtbBXG9Uzi9V YzIphzzuot8Q144TPGxuWsxCpcXFw7jW+gDVapAI1CSJYpryWPGCFkjQXytX+FAF HUZm7Jpj9P1+85RqDNVuwwuDJD/sHL6mBINzKY8T3j2RP1SRQ6bXQ== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , qemu-stable@nongnu.org, Eric Farman Subject: [PULL 21/23] s390x/pci: Use qemu_log_mask() for guest-triggered errors in reg_ioat() Date: Wed, 30 Sep 2026 11:24:18 -0400 Message-ID: <20260930152420.1956230-22-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX3FRHK7JIivw6 lnf3Sws8JPmj6q9YocBSPJ4LX0xFlRZR+w5bq3oyx/LxO9K2fI5/Qm/gy7CN33rjbll4SQtsz6W Aqj8P0oPkPU+UsOX7ZNIWfFikCrOJag= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX1jXtNhBLm9Oc O8D0HPppjcXLEAER4kI1FCbQzbu97JYiq+nlhx+G9XDxoDdCqV7OeA5xj3Dbt1/q0SfqlRH4WcL U1ABMcw+MjkMIRMqzUwW1fERCUxOEV4kJLz+LWGYCrmFwZwLj+sVIECXtUEDgA+6s8T7K8dwsdp K2W2eMEh31dffwLwjlK2NSufBzkdQL0aq8AjR78ACD9PaQn9cQWabdn7SutRWHH37G5nj6XL+VQ AeXLB7UsFR5mbfnoF/lQcYM6Oo0wORAqNDzHUggDXbKOtF/HWe3vtQmyESv9OxXMRpJS/9hJPCH XZQKXwo0GnDeIceqeyGBntSzMTIrciQxH3MN3rd5kMj0iUuRKTPuijH/VSjaoDCUrtmbXQRXvX+ 7F8Uk/DCFMPUNSgoVqe+PN9Wk0xHqoCNZTtj6uQQ9HLxqqQLhnvUkQVjtmBw6OLf0QUsuS1+4GV SiVjbJ6P8JfN1DXp1Ag== X-Proofpoint-GUID: AXg-PJrV-nqcLe0IMSS3vO4lj66VFjHV X-Authority-Analysis: v=2.4 cv=RKcmjIi+ c=1 sm=1 tr=0 ts=6abd29b4 cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=iQ6ETzBq9ecOQQE5vZCe:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=kA0HU5bNTcLZE60lrGkA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-ORIG-GUID: AXg-PJrV-nqcLe0IMSS3vO4lj66VFjHV X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 priorityscore=1501 spamscore=0 bulkscore=0 impostorscore=0 adultscore=0 lowpriorityscore=0 suspectscore=0 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=farman@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781943070158500 Content-Type: text/plain; charset="utf-8" From: Matthew Rosato The error paths in reg_ioat() that are triggered by a guest providing invalid MPCIFC arguments use error_report(), which writes unconditionally to stderr. A misbehaving guest can exploit this to flood the host log by repeatedly issuing the instruction with bad arguments. Replace these with qemu_log_mask(LOG_GUEST_ERROR, ...) so that the messages are suppressible. Fixes: 863f6f52b713 ("s390: implement pci instructions") Fixes: dfcee1ea4c52 ("s390x/pci: add support for guests that request direct= mapping") Cc: qemu-stable@nongnu.org Signed-off-by: Matthew Rosato Reviewed-by: Farhan Ali Reviewed-by: Eric Farman Link: https://lore.kernel.org/qemu-devel/20260929153012.774530-3-mjrosato@l= inux.ibm.com Signed-off-by: Eric Farman --- hw/s390x/s390-pci-inst.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c index bac813fb6a..73417edade 100644 --- a/hw/s390x/s390-pci-inst.c +++ b/hw/s390x/s390-pci-inst.c @@ -15,8 +15,8 @@ #include "exec/memop.h" #include "exec/target_page.h" #include "system/memory.h" -#include "qemu/error-report.h" #include "qemu/bswap.h" +#include "qemu/log.h" #include "system/hw_accel.h" #include "hw/core/boards.h" #include "hw/pci/pci_device.h" @@ -1044,11 +1044,12 @@ static int reg_ioat(CPUS390XState *env, S390PCIBusD= evice *pbdev, ZpciFib fib, =20 /* currently we only support designation type 1 with translation */ if (t && dt !=3D ZPCI_IOTA_RTTO) { - error_report("unsupported ioat dt %d t %d", dt, t); + qemu_log_mask(LOG_GUEST_ERROR, + "unsupported ioat dt %d t %d\n", dt, t); s390_program_interrupt(env, PGM_OPERAND, ra); return -EINVAL; } else if (!t && !pbdev->rtr_avail) { - error_report("relaxed translation not allowed"); + qemu_log_mask(LOG_GUEST_ERROR, "relaxed translation not allowed\n"= ); s390_program_interrupt(env, PGM_OPERAND, ra); return -EINVAL; } --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790781997; cv=none; d=zohomail.com; s=zohoarc; b=O/6Jr3N9HKamTzSADtVInycnK5QK5fMOPeU6L/WTrcGKiCnQnz01/2fq3hfaWBsuOuRWSMxMMy3D5+Ye65x04ONpsRvBqu0gImv3QQTc6d2fT57/H9cHL2Vtti2x7RKN5ZsCLar+56EU3lzN1ehOC8bV5fBpjNs5ZsK1dxZrQwg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790781997; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=UC5Wrz4cb+APVO1YR6QyOPoogUjb+dWaj+M3wgBMxHI=; b=bGmFYADnN5+eQvxvDXZEgr+TwKuqFF5dD3AyL+eN94VhOvFIG2AUPRzjytFCWH+RQD0tYih2RbqDGocQzU4AGOhVDMvFLIrsEJCfBD/3bkSgPdGk+eYFy1OATqthS7jZV/j+lIjoPVaWnQFlEMZmkb73dxLRmgu7ikiabornpQc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790781997723503.81060804904916; Wed, 30 Sep 2026 08:26:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwBE-0000Jy-Fx; Wed, 30 Sep 2026 11:25:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwBC-0000I9-5O; Wed, 30 Sep 2026 11:25:10 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwBA-000240-3s; Wed, 30 Sep 2026 11:25:09 -0400 Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5pQG3167026; Wed, 30 Sep 2026 15:24:36 GMT Received: from ppma22.wdc07v.mail.ibm.com (5c.69.3da9.ip4.static.sl-reverse.com [169.61.105.92]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx5ptcva3-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:36 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UEI1Vq3569533; Wed, 30 Sep 2026 15:24:36 GMT Received: from smtprelay07.dal12v.mail.ibm.com ([172.16.1.9]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0xcs9n35-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:36 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay07.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOYiv25428596 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:34 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id CBE7358068; Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 549915805A; Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:34 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=UC5Wrz4cb+APVO1YR 6QyOPoogUjb+dWaj+M3wgBMxHI=; b=D50DzZm02hVsthwQeQYTLNjdSqlpLiBnm yrlfcBPJt9ovWXrvBHZPmhU8mB9vbGg6OsSVfposKEn47hiuwKW7Ye6NfNgbcxth 1H60k9sp18u9h/L3cACrSLmXccZbICdGOu4bdmzILzq20bvyh94SubbrSGG6X8lY TSrc7KnhGgU5RXDil02Ci8R7go6xha90++ojfJjVfoWq/CyM9VZpRpeex0O4aTqa SrvHyRPyNYOcNMI9DPxOGh51c9p6F7ly3XWZcqzt1tu+UGod1zssZOjvFsOECEOA eJaSEllmvajvgFcau8OxKw9FdradNOvCnXBkSYTG7hV857wkcPBmw== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , qemu-stable@nongnu.org, Eric Farman Subject: [PULL 22/23] s390x/pci: Reject apertures beyond IOAT capacity in translation mode Date: Wed, 30 Sep 2026 11:24:19 -0400 Message-ID: <20260930152420.1956230-23-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: f8dSWU0-53z9Z5Iye8EtRzlBjd_mR0O5 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX+cqzTtqTM4v8 FHmjooW3N0xIHqyQy1L0WRcrACRK/kH8E5+UG64PgIstlKnzUqbX6dBJrJs71qtAgHQ/WtAXOyv SYRrjdJQXb8gt6nxOQJD4LYMLiGvadXWjJNNYbXyNCxp6cgPjuSK6AkkB5W/4um3c2c18mB3vn9 ipON27f2v9WJgsGfu7N7AtP72jyzDvZIjYLFwJolYpJo+rsg0IdRQufaKAMYXpfj6guBhJRN8jd Ld3BqakyJBD4vkyD7kdHSjaC04pdvft49ZbFa3gjFpJmDuf/1/juMl5aWy7hr/ZjUAN1r0anPrx VDAnbIoKKa7Xzbz33gb47yDATY+De8UqPGUt+QzkFBa0HQ0SUiz+/K8dxbBwuETj1NpmK4HoR0E Z9rNmt8xtFBAghCRo0jSDpid83CHO5Fp9P/Jx3Ks0VcmmaxYKu3zdh87NOYBpmC3xczilc9hFop ndudgvyMMHxS8dJRpkQ== X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX457J0bSwtgmo 98Tlbsy7qxjXBFr/dh0lKNCNeoTdZ6aETkI6J+qbFjgEfWk6K2hKTNrmFt3OecpLVEfdts/QIpL 9nzmhTqDwKEeNAmo+kgcuu3TZNh+i5A= X-Authority-Analysis: v=2.4 cv=EY5d0/mC c=1 sm=1 tr=0 ts=6abd29b4 cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=RzCfie-kr_QcCd8fBx8p:22 a=VwQbUJbxAAAA:8 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=xSIT066dgqKBegNCQIUA:9 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-GUID: f8dSWU0-53z9Z5Iye8EtRzlBjd_mR0O5 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 suspectscore=0 adultscore=0 clxscore=1015 malwarescore=0 impostorscore=0 spamscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790781999422158500 Content-Type: text/plain; charset="utf-8" From: Matthew Rosato In order to support direct mapping (which is only bound by the aperture size of the underlying host EDMA reported via vfio) QEMU reports the host-provided EDMA to the guest. However, when using translation mode QEMU only supports up to 4 TiB currently (the size of a single RT table). Reject attempts by a guest to register a translation aperture that would exceed what QEMU can support by giving an operand exception on the MPCIFC instruction that requested the large aperture. This restriction can be removed in the future if/when support for additional IOAT regions is added. Cc: qemu-stable@nongnu.org Signed-off-by: Matthew Rosato Reviewed-by: Farhan Ali Link: https://lore.kernel.org/qemu-devel/20260929153012.774530-4-mjrosato@l= inux.ibm.com Signed-off-by: Eric Farman --- hw/s390x/s390-pci-inst.c | 15 +++++++++++++++ include/hw/s390x/s390-pci-bus.h | 1 + 2 files changed, 16 insertions(+) diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c index 73417edade..09026360d4 100644 --- a/hw/s390x/s390-pci-inst.c +++ b/hw/s390x/s390-pci-inst.c @@ -1054,6 +1054,21 @@ static int reg_ioat(CPUS390XState *env, S390PCIBusDe= vice *pbdev, ZpciFib fib, return -EINVAL; } =20 + /* + * We report an EDMA that may exceed what QEMU can handle in support + * of direct-mapping. If the guest attempts to register an IOAT that + * is too large, reject it with an informative message. Only direct + * mapping can be used for guests of this size until support is added + * to QEMU for additional IOAT regions. + */ + if (t && pal >=3D ZPCI_TABLE_SIZE_RT) { + qemu_log_mask(LOG_GUEST_ERROR, + "ioat pal 0x%"PRIx64" exceeds max translatable addre= ss\n", + pal); + s390_program_interrupt(env, PGM_OPERAND, ra); + return -EINVAL; + } + iommu->pba =3D pba; iommu->pal =3D pal; iommu->g_iota =3D g_iota; diff --git a/include/hw/s390x/s390-pci-bus.h b/include/hw/s390x/s390-pci-bu= s.h index 9228523ce8..f182bab246 100644 --- a/include/hw/s390x/s390-pci-bus.h +++ b/include/hw/s390x/s390-pci-bus.h @@ -140,6 +140,7 @@ enum ZpciIoatDtype { #define ZPCI_PT_BITS 8 #define ZPCI_ST_SHIFT (ZPCI_PT_BITS + TARGET_PAGE_BITS) #define ZPCI_RT_SHIFT (ZPCI_ST_SHIFT + ZPCI_TABLE_BITS) +#define ZPCI_TABLE_SIZE_RT (1ULL << (ZPCI_RT_SHIFT + ZPCI_TABLE_BITS)) =20 #define ZPCI_RTE_FLAG_MASK 0x3fffULL #define ZPCI_RTE_ADDR_MASK (~ZPCI_RTE_FLAG_MASK) --=20 2.55.0 From nobody Sat Oct 24 00:32:23 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1790782105; cv=none; d=zohomail.com; s=zohoarc; b=WT/l7uf+1s+ooSSzX+cl6F0jifG524kfpZQ4SceOTGrHkw/9NmTF5hEbcrdnXGPuYagnf+tkQbyInA5tf6yDjHdh/AeKfJP0xH+H3e/3/XkbFCpXTfp7T1NifF35rEWW4EHe9rw4jwyFwV4DDXNvWwH1SiakDE6510hDjnCvJgM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1790782105; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=tfFc6w72EmH9RKehXoqXyigQN7agxzj6dxIXEATby1g=; b=GDcwHYGQ/iC8+o0qILM0ghmf2U66ZCHXJro8zMLHPMaQH9C72/bXaiMqxmxvrO6/6T0elTquvbpolbKOHbpm+C2OBdLJMcCwjO40EAjPjC0CCfvJbmPa7g1XTRGvxXPaMsGYmR0yG/3t7wMWACKaiQk2LuQpzSOHUW3r4t1bOBY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1790782105848137.96364353894683; Wed, 30 Sep 2026 08:28:25 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xBwB8-0000Bo-1d; Wed, 30 Sep 2026 11:25:06 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwB6-0000BI-AV; Wed, 30 Sep 2026 11:25:04 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xBwB0-00024T-V1; Wed, 30 Sep 2026 11:25:04 -0400 Received: from pps.filterd (m0353725.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE5RDA1932743; Wed, 30 Sep 2026 15:24:37 GMT Received: from ppma21.wdc07v.mail.ibm.com (5b.69.3da9.ip4.static.sl-reverse.com [169.61.105.91]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gx4fecyg0-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:37 +0000 (GMT) Received: from pps.filterd (ppma21.wdc07v.mail.ibm.com [127.0.0.1]) by ppma21.wdc07v.mail.ibm.com (8.18.1.11/8.18.1.11) with ESMTP id 68UE35At3541454; Wed, 30 Sep 2026 15:24:37 GMT Received: from smtprelay01.wdc07v.mail.ibm.com ([172.16.1.68]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4h0hfpceu9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 30 Sep 2026 15:24:37 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (smtpav02.dal12v.mail.ibm.com [10.241.53.101]) by smtprelay01.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 68UFOZgC8127420 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 30 Sep 2026 15:24:35 GMT Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 6CF4158068; Wed, 30 Sep 2026 15:24:35 +0000 (GMT) Received: from smtpav02.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E670658060; Wed, 30 Sep 2026 15:24:34 +0000 (GMT) Received: from li-479af74c-31f9-11b2-a85c-e4ddee11713b.ibm.com.com (unknown [9.61.5.156]) by smtpav02.dal12v.mail.ibm.com (Postfix) with ESMTP; Wed, 30 Sep 2026 15:24:34 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:date:from:in-reply-to:message-id :mime-version:references:subject:to; s=pp1; bh=tfFc6w72EmH9RKehX oqXyigQN7agxzj6dxIXEATby1g=; b=hiZWcAG7ay6XIjr4DYw+XZMokCTgKaKLo ek1Q0KF6zkHffe2Nq0ancAt31oyhwdm4rx75VOdKyDIJ8Z4jxEd6MTrnQ5nCAURs mKlgy166Z8e74DYUbHjLujq0K4w+vE/j8vMokVNLB5lsm1XvPTgEfPMmtzKhyAYr zJEBq+QkYg/dmXlP1SBAgPv5fGaB6lWZk4PloBEX88ZUctfISfxZLgGVeiq463XS XDvaEnfV/rW+1wWY0T+MHeEWlAqAIZ9LcY+/DOI6ObnA16aP0RQ3sDX+CvTkbIf1 qf0eDfannoRWBtpC2fYCSIgsO8G9mHdGPqVB1Gv2nH1XZQWLo58aw== From: Eric Farman To: qemu-devel@nongnu.org Cc: qemu-s390x@nongnu.org, Matthew Rosato , Cornelia Huck , Eric Farman Subject: [PULL 23/23] pc-bios/s390-ccw.img: update s390x bios Date: Wed, 30 Sep 2026 11:24:20 -0400 Message-ID: <20260930152420.1956230-24-farman@linux.ibm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260930152420.1956230-1-farman@linux.ibm.com> References: <20260930152420.1956230-1-farman@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=FYWiV5+6 c=1 sm=1 tr=0 ts=6abd29b5 cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=VdqzKS8jKosA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VnNF1IyMAAAA:8 a=5_wF4lt3V0T5ztF0mGYA:9 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX+gpQZBW8YUqH He/JNKplC8YpnR1Lx9NVTEU52jJBdZbZknHbjRDMnbnPXnOef/7Da0+XaTNHIWyUsw9Q9vYb/z+ BX0j5GaXRhHbSxbeMVs2KCePyVdL7Lg= X-Proofpoint-ORIG-GUID: Au9TtYVFbAPvmfiksg3XNxLx4NSHB0Os X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTMwMDA2MCBTYWx0ZWRfX10AqPBoFpTtK 7qj5OUqXERwyP3ku6W/ffc8Oao7IYB87+wGygowbpxfnVi47/ei0ZU9yokQiHx1f4O3BnEAAHZJ WtZNnF2GbbXhCF2z9bBfSfLZrs/5n80Bn30qyiPVVa/6EX6OqprvhTZxYlAHYc5q7f68EoCYqOQ RGuTccmWUjuT7HpDGny4cjO3kDwsnIFKfxA6eFKLjmmmmQYe0dRoKBOoe5ISSXboaC5ZiZ6XAP7 QG+KGzEQjOrXYG74Is9wTi+ohqUG31p/dBqs2y5stLUBwQzkuXkwXTKJMgzx2b00KiEstnkpb9A Yv2ccEY0YlGBIUkqNgRRfhTD/ndPkiZM/aY2YD+SMX3cV/E+nNqzTEXZazPItbnbqj+RnE7RRSG jUfbt2GFe512td3Wy/sSAEjoydbJoG6SyGVrbplsmy6ul992+1iozyykMqRYraCYJsWmMoHcxi/ RAq7dBDNiA/W9D4oncg== X-Proofpoint-GUID: Au9TtYVFbAPvmfiksg3XNxLx4NSHB0Os X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-30_03,2026-09-21_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 impostorscore=0 spamscore=0 phishscore=0 priorityscore=1501 malwarescore=0 bulkscore=0 lowpriorityscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609300060 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=farman@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: -26 X-Spam_score: -2.7 X-Spam_bar: -- X-Spam_report: (-2.7 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, LOTS_OF_MONEY=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1790782106334158500 Content-Type: text/plain; charset="utf-8" Rebuild bios to include: - 20260924222949.147720-1-zycai@linux.ibm.com Signed-off-by: Eric Farman --- pc-bios/s390-ccw.img | Bin 112408 -> 112408 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/pc-bios/s390-ccw.img b/pc-bios/s390-ccw.img index 7dd262b8992bb68718c1f1a5fe96727e230b3868..bb07d2d9eefe6b1e22abec9b5b5= 2e9381be63de6 100644 GIT binary patch delta 27171 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 --=20 2.55.0