From nobody Sat Sep 26 22:15:44 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=1788205841; cv=none; d=zohomail.com; s=zohoarc; b=kg6fS/s15LSI/OT5VGzJc6Xexi1hTtBwRCYe7ffyvDKQ97ZZv0dxG2NRaJKaI65YA2zGODf94O9STzf/hy/YmcxLqWAitGmVOrtIX8SE5eJ+rYos+L+2qOtwQhKlWkMvSpGvKDmkLoRRlZdKxx3xxARV5QMyuxP6SJFBqJhCiEI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205841; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=5IK+F8PP4Raqq3BJB4nLCs/in/QuWj2w5zEVvaHbvEo=; b=PrXNLwZfAqRlckWuCSYpwHpsZGztFm+lB8c65RHn6gVjE2PJSAB8/wXlzxRo4QFHP8Owkpr95gWtBH+UVq6XzoGzLEHFJoJnIR0DTXzVFhrZKNcjocQFWQIhMyixWzpuU3wIU0zDmBDK7ZdAHzbZgkM7PRXaYROb5CR92cs0SCA= 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 1788205841393216.73443672655594; Mon, 31 Aug 2026 12:50:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180a-0000J6-C6; Mon, 31 Aug 2026 15:49: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 1x180Y-0000Hx-Cs; Mon, 31 Aug 2026 15:49:30 -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 1x180W-0002bF-Lg; Mon, 31 Aug 2026 15:49:30 -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 67VIVcl13108100; Mon, 31 Aug 2026 19:49: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 4gbq54kgtt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49: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.7/8.18.1.7) with ESMTP id 67VJfiCj026976; Mon, 31 Aug 2026 19:49:25 GMT Received: from smtprelay01.wdc07v.mail.ibm.com ([172.16.1.68]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4gccexyjaa-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:25 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay01.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnN7o52429118 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:23 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5FC6F58052; Mon, 31 Aug 2026 19:49:23 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C8AFC5805A; Mon, 31 Aug 2026 19:49:22 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=5IK+F8PP4Raqq3BJB 4nLCs/in/QuWj2w5zEVvaHbvEo=; b=GnYg0b7LowFZKOta7nddFyayX29OP+rLA Oki5l9mejwJegtlwYj/pspxLZHTYZrGWr15pZttxN8MwFYcsOqDmWfReLN6azwE4 +Ngcc6c3sxcZ29BJ3CpUiSOkLWzLWeSkKWvratYsx94riMjACrF/OndnDNuNjSYz F37a4O5AxLEWFJ+xoL3glAWs2oR60o7+6vbTEkmHqb5WPy3KAVu7czJg35snG6mP S2tZJTtB4SK3dSCyisCxfyL0LQwx5QF2uzj1s+nEPL2WjCPLrwyIXKUhx1w7DXTv rYDmONgdPzEY//KaI9mLUVpUwpKsOTRJztc65+305Gkt2jna6qHAQ== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com Subject: [PATCH v3 1/8] pc-bios/s390-ccw: Check if a PCI function is already enabled before trying to enable it Date: Mon, 31 Aug 2026 15:49:12 -0400 Message-ID: <20260831194919.3830270-2-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX8BsSHXqHPfhu Z2jNnXJMs326PwByylydIHY2hb+KiZHr78sTbwWGSt+vJIWSC+GOOZliHsbY3Op0rBBgGB8naWC YESNRKF/HRU6pB/Z3z58IjMzoBArCqwBS5zIpaMlm/+CYwMiNpFRc7H3flmhRwvDqEMoQ4fqaFG FB4Y6ikSWQsJkyIXbCBcDjNeF3unWbG/mT0hTr98TA1I5u9hJbf+vXgetBItgb/G6DGr2qznMG2 e52xNFA/nXD4+MJfRCM6tS0bpl+2ePm8se3196RWGEknpXLeAsKfzUVqHLGuyRdTvGpfJc5GWhr lqSD1AWbrFrHf+g8MaImgnTmQWez+824Mvk7rrvFJVIKmoUkkHbLwx89pBU1/aKM6gy0Zu946/f 9tcTGp4oaCSOELkYJpV+Zzd5pcS/FUPTXAwFjx362LhyZ9YbJ3Hz0tgTN6H+CfT5K8bMJJ/eQPb TS79HP4CD96mr7tMf3g== X-Proofpoint-ORIG-GUID: bqHaiMMX0JB6jat-AOZ85mrKHw4eVJZk X-Authority-Analysis: v=2.4 cv=CNgamxrD c=1 sm=1 tr=0 ts=6a95dac6 cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=rOHUGBc37_MNbdIC:21 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VnNF1IyMAAAA:8 a=NApzFvG8OdL9Xanj_wQA:9 a=O8hF6Hzn-FEA:10 X-Proofpoint-GUID: bqHaiMMX0JB6jat-AOZ85mrKHw4eVJZk X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX5EKVS3qtvdtP ZQtw8u7cLPpzt5QgNNHdnud6TLh8nnuYtrzO15LwFc38Mm+tfD4NP/C/n/uHuxQvqZ2E3wHo9lq N18BQ3ZIuFp0BDsqqlH3Np16wnV8v7g= 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 bulkscore=0 suspectscore=0 phishscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 impostorscore=0 adultscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205842367158500 Content-Type: text/plain; charset="utf-8" From: Jared Rossi Enabling a PCI function that is already configured will result in an error. Simply check if the device has already been enabled, and if so, return without doing anything further; otherwise, enable it as usual. Also, because enable_pci_function() prints its own message, let's remove the duplicate message emitted during the virtio PCI setup steps. Reviewed-by: Zhuoying Cai Reviewed-by: Eric Farman Signed-off-by: Jared Rossi Reviewed-by: Jason J. Herne --- pc-bios/s390-ccw/clp.c | 4 ++++ pc-bios/s390-ccw/virtio-pci.c | 1 - 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/pc-bios/s390-ccw/clp.c b/pc-bios/s390-ccw/clp.c index ca9565d8de..7917f13345 100644 --- a/pc-bios/s390-ccw/clp.c +++ b/pc-bios/s390-ccw/clp.c @@ -82,6 +82,10 @@ int enable_pci_function(uint32_t *fhandle) { ClpReqRspSetPci rrb; =20 + if (*fhandle & CLP_FHLIST_MASK_CONFIG) { + return 0; /* already enabled */ + } + rrb.request.hdr.len =3D sizeof(ClpReqSetPci); rrb.request.hdr.cmd =3D 0x05; rrb.request.fh =3D *fhandle; diff --git a/pc-bios/s390-ccw/virtio-pci.c b/pc-bios/s390-ccw/virtio-pci.c index f501252c81..231ab6e04d 100644 --- a/pc-bios/s390-ccw/virtio-pci.c +++ b/pc-bios/s390-ccw/virtio-pci.c @@ -452,7 +452,6 @@ int virtio_pci_setup_device(void) VDev *vdev =3D virtio_get_device(); =20 if (enable_pci_function(&vdev->pci_fh)) { - puts("Failed to enable PCI function"); return -ENODEV; } =20 --=20 2.54.0 From nobody Sat Sep 26 22:15:44 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=1788205846; cv=none; d=zohomail.com; s=zohoarc; b=MdAts9ZIB73DEMRacDgoPDUAZBthGxBAHev9/WUw1XRcvsIBr3nLlaAzAl7XAYjulDbcbTuOSBXr80sF+Rq+HBmPEDTxBNjE94ehIU0kHLaQlTAr5XCoQ1tZDJRXHBECj2tG8vn+p6V6CLgF3f8qNGDjYbxJgLNmBKUdAMNsHyY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205846; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Va2UZzJBThLAqKBv3qTn9iNBAvZqDKPJCkqsAr+o7Uo=; b=A28hO1HFjJHEIOp77H1HSKlaSgy7qVjOZF9u9HxkNetSPI+PCXKulcmxdxN6ocJaTXPplk4avn/5jkinQcVnt6mjHLvju9WoEqdqd+XVayCBM/+CXpk44AYjhAMta3Tkwc4kwlOvE+sE3sHY3bsY8uMXMjRrfQdUUi14gPUaAoM= 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 178820584658650.39206954426993; Mon, 31 Aug 2026 12:50:46 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180b-0000Jq-8h; Mon, 31 Aug 2026 15:49: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 1x180Z-0000In-NE; Mon, 31 Aug 2026 15:49:31 -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 1x180X-0002bK-5U; Mon, 31 Aug 2026 15:49:31 -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 67VIVkRK1979921; Mon, 31 Aug 2026 19:49:27 GMT Received: from ppma12.dal12v.mail.ibm.com (dc.9e.1632.ip4.static.sl-reverse.com [50.22.158.220]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4gbnudkfss-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:27 +0000 (GMT) Received: from pps.filterd (ppma12.dal12v.mail.ibm.com [127.0.0.1]) by ppma12.dal12v.mail.ibm.com (8.18.1.7/8.18.1.7) with ESMTP id 67VJfMEF011384; Mon, 31 Aug 2026 19:49:26 GMT Received: from smtprelay02.wdc07v.mail.ibm.com ([172.16.1.69]) by ppma12.dal12v.mail.ibm.com (PPS) with ESMTPS id 4gc9rq7xjn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:26 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay02.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnOxT57213244 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:25 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D502558052; Mon, 31 Aug 2026 19:49:24 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3EBAC58056; Mon, 31 Aug 2026 19:49:24 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=Va2UZzJBThLAqKBv3 qTn9iNBAvZqDKPJCkqsAr+o7Uo=; b=qS1lmaReVv/Tz9SD2r6LGQmmPvdKeKRUb pLN9i2htkEVvp9dcTvAXmfhvUZHK+VnkoMWINQPtKSyvAIqNgp/tcPzs3SG1+r5g D+yEeQiBatukwVf3loCy4oSnkKEeYHtlDCVL72h7gaKgyi2qcS4yDJpBayw9b/Z1 YHq2T9jwerUTKuDzTaIvHmDm+Fx4JY56RQ8sWCjaD/hytYhkLDs6h+DRhxSK59Mn Bie+iOjcVOfANjNqSYvSCRQDPpzXu0VueWxIYRIS4irUZR95r0jCvwD7U6fCnFEL WXeqM/TW0yaLfRYIrqQ4lQbONqqNF2+VWIjDS2qzVeAdtiiTBi7Uw== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com, qemu-stable@nongnu.org Subject: [PATCH v3 2/8] hw/s390x/ipl: Fix incorrect PCI IPL block lengths Date: Mon, 31 Aug 2026 15:49:13 -0400 Message-ID: <20260831194919.3830270-3-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-GUID: Lk1k4v1o-M8Wg202tnN4QIioa3tY4dsw X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX0sPVYp+Li3Vh c5pqEUqTXF52cXUVEvoCnL1JKH3VysDqyQh0q5/AoghqIXM5F1BzxTvnfaM0JqTeaDPMTrh51J6 XktIQiZUtADXK+RnJVtt19HNLQLpOHS18Occ35PL4JtNjskWKCfIxGqxCGHdqAZB+Lp7GIRlU8N z+ZtoP3Ok5StbLurjkz4CAr2PBipO0FsZvurZIKagQoF1wWDCmtWoe3XzrZnIG5zdCUnr/L1+h4 Jl8VUUq2yp77VQVW8atkWpMw84J3Mxs+Hgsu0/ANgSk4nxyohuQAVeoCch3UDNpcsIrebczJi+5 vRTyu3nACiHiOD8pR/4t3oUaT329lGRKU/pYd6DfVuowqNsMf/XudMX2jYKak56JsLHEF7F2Qtj sIt6ZTKxSAKllvDv4TvY9BOEN7H60pnUbV/yRP5no+yu2d1axLGZgRfeQZlIfyUB058R1Ast7Wm 2YGxdJMflnaPyIgRBgw== X-Proofpoint-ORIG-GUID: Lk1k4v1o-M8Wg202tnN4QIioa3tY4dsw X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX65J4RnswFQd5 5AFJ3NF3s6zrY1yyZvEyQ05m/3Tir8DCuwPgQfEdCWmQTKKelvyTHMcOT+SBLrNtqk4ymMahCu4 hxUk64TjZo8IVX98NpIwdcFpZ3dlK9Q= X-Authority-Analysis: v=2.4 cv=B92JFutM c=1 sm=1 tr=0 ts=6a95dac7 cx=c_pps a=bLidbwmWQ0KltjZqbj+ezA==:117 a=bLidbwmWQ0KltjZqbj+ezA==:17 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=V8glGbnc2Ofi9Qvn3v5h:22 a=VnNF1IyMAAAA:8 a=69wJf7TsAAAA:8 a=oWrvFdo7ebCuo4saDU8A:9 a=Fg1AiH1G6rFz08G2ETeA:22 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 spamscore=0 clxscore=1015 suspectscore=0 phishscore=0 lowpriorityscore=0 bulkscore=0 priorityscore=1501 impostorscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205849411154100 Content-Type: text/plain; charset="utf-8" From: Jared Rossi The length of the PCI IPLB is calculated by size of the IplBlockPci struct plus the number of bytes used for common IPLB fields. Fix the S390_IPLB_MIN_PCI_LEN to reflect this, and assign a valid blk0_len while we are at it. Cc: qemu-stable@nongnu.org Fixes: 395116781df5 ("s390x: Build IPLB for virtio-pci devices") Signed-off-by: Jared Rossi Reviewed-by: Eric Farman Reviewed-by: Jason J. Herne Reviewed-by: Matthew Rosato --- hw/s390x/ipl.c | 2 ++ include/hw/s390x/ipl/qipl.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index d59ed36c78..ba69ee89bb 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -615,6 +615,8 @@ static bool s390_build_iplb(DeviceState *dev_st, IplPar= ameterBlock *iplb) switch (devtype) { case PCI_DEVTYPE_VIRTIO: iplb->len =3D cpu_to_be32(S390_IPLB_MIN_PCI_LEN); + iplb->blk0_len =3D + cpu_to_be32(S390_IPLB_MIN_PCI_LEN - S390_IPLB_HEADER_LEN); iplb->pbt =3D S390_IPL_TYPE_PCI; iplb->pci.fid =3D cpu_to_be32(pbdev->fid); break; diff --git a/include/hw/s390x/ipl/qipl.h b/include/hw/s390x/ipl/qipl.h index 3fa9649112..69b0023ea3 100644 --- a/include/hw/s390x/ipl/qipl.h +++ b/include/hw/s390x/ipl/qipl.h @@ -39,7 +39,7 @@ typedef enum S390IplType S390IplType; #define S390_IPLB_MIN_PV_LEN 148 #define S390_IPLB_MIN_CCW_LEN 200 #define S390_IPLB_MIN_FCP_LEN 384 -#define S390_IPLB_MIN_PCI_LEN 376 +#define S390_IPLB_MIN_PCI_LEN (offsetof(IplParameterBlock, pci) + sizeof(I= plBlockPci)) #define S390_IPLB_MIN_QEMU_SCSI_LEN 200 #define S390_IPLB_MAX_LEN 4096 =20 --=20 2.54.0 From nobody Sat Sep 26 22:15:44 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=1788205819; cv=none; d=zohomail.com; s=zohoarc; b=eRoBpQ60XPVEzPozfq4tx910te2l/QzVEfxNsQfhnlQn2deoCCpE3vxxRGzrajgpQN7Fkebs+KK5+fW5JLaHPjBuxGTeUEWTzIUeYI+Upbc15N+GPovUCFzjJclPPxkjw/5peGI0IA0z4u46trnw2ylHODpXiz8qmBZhGcY4YpU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205819; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Sx8cXbsbymOHX3RVCSyPfl5bosBMw6kYOtcDbmgyj6o=; b=gLa0phTVODlRE5tXZ0gJsoh1vhVyiRMenv5jCaAJajssFlVVGR+IF5kU+eQQIik44Nvug2zv18/QG/Z3EUUgyerTQHIdf6SawWk3zusTDIghvBtiI2DRLpNIM9njs/DNW7OzqwO7loCVKvjleAK7h8MSMOEpLf6i8oiB8krX5no= 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 1788205819545164.55502144936293; Mon, 31 Aug 2026 12:50:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180c-0000LG-JK; Mon, 31 Aug 2026 15:49: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 1x180a-0000Jc-S5; Mon, 31 Aug 2026 15:49: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 1x180Z-0002c1-1u; Mon, 31 Aug 2026 15:49:32 -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 67VIViua3108131; Mon, 31 Aug 2026 19:49: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 4gbq54kgu1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:28 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.7/8.18.1.7) with ESMTP id 67VJfOTI012875; Mon, 31 Aug 2026 19:49:27 GMT Received: from smtprelay04.wdc07v.mail.ibm.com ([172.16.1.71]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gca4vyunw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:27 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay04.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnQm852560280 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:26 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3FC7958056; Mon, 31 Aug 2026 19:49:26 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id AC02258052; Mon, 31 Aug 2026 19:49:25 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=Sx8cXbsbymOHX3RVC SyPfl5bosBMw6kYOtcDbmgyj6o=; b=fbxqyVq7KokjZq03pY6Lu8r2Tl51PtgeT 7obJWZtP41Nv5JVRmaf5eNWQtqqzo2Kou6i2khi7vLhHGyUbjtiTUF1cz3bUdmsC M/uymOGi1iqXZdnouTrKmzbHs21D+kw8r2LoKS6CVka7i1lokjKPI0eB3IDgIeEe yg6Adv+ql5znGQQGIZgQQSyI0gC+mgUvRyEWSc4iFEwowq+nGs8GJNSubuWxwMCO zNK49Nu42JuOfjJrpu13YFzcHskkBjj2Lu9Nr04Tw1Q18WX5gBWfC+t5iHFOee80 OqZFnjacwbtxHq00Xw9cTGHg83k04lc8JBvOVvRNxPs8gcbyrUjBw== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com Subject: [PATCH v3 3/8] pc-bios/s390-ccw: Use bus specific IPL_TYPE directly for scsi IPL Date: Mon, 31 Aug 2026 15:49:14 -0400 Message-ID: <20260831194919.3830270-4-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX3u/ZIhgfZGSk Ysc0CAn08NWBz2ZTdIvmltBV+dqrWl+q0w8iQj343uSffvDr7ULaCY8uvPrPkw+xcCK+035Q0t5 E8F29+zBliBx/BWq1jEgD4zt1NHuf7Z3DrFlsp7xc8mttjhBLVbRLdgtG4yviTKTZ90ea1Phbly egFM2trztVTN+m1ZXyK7uUIzT2TeokVKIR/7RAft1wPAvn1o+iQosflq97rfpraO1kjjF4AxaZk UmYmMIJDvykngzHteLLsf5s4hft1F31SL97E2jxRMs49B+8tRNTIrqR5vZcXunC1IbjTm/oiXnn xjuY0xj4BfpCUmaMemZzQj7LV6ynS6pXvLB9KLl77ZKxAXAsebI0/h+2CC6eP0JAuAbfnMqcgBB h9up6x9r5LORbVN4N9+zGIxKWU06NwCGqD5DY3LZNMO5BjQKk6YKPP4oo7ii/k0ZyhFGcmRbuXk vPYlcvXTYFy/PTym54Q== X-Proofpoint-ORIG-GUID: isEJFh8IRyyhPxrASoUHhHK8kHGeNw8Z X-Authority-Analysis: v=2.4 cv=CNgamxrD c=1 sm=1 tr=0 ts=6a95dac8 cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VnNF1IyMAAAA:8 a=__HpbD2NEqU3pYqaDEYA:9 X-Proofpoint-GUID: isEJFh8IRyyhPxrASoUHhHK8kHGeNw8Z X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX8I+8p583AGNq 7rTM47qMR67s5OCLwreujVJQLySItgm7sAtWOXMGSjztD2APl61IjJjcRno2UbYSrC7c8NsqLLs cv9JdWIwWw59pQtacGigcgRaHt49ILY= 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 bulkscore=0 suspectscore=0 phishscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 impostorscore=0 adultscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205822473158500 Content-Type: text/plain; charset="utf-8" From: Jared Rossi All existing switch cases that handle S390_IPL_TYPE_QEMU_SCSI directly fall through to S390_IPL_TYPE_CCW. Rather than always fall through, reassign vdev->ipl_type to the appropriate bus for the scsi controller and proceed as usual, where the bus is designated by the "bus" field and set during the IPLB build. Because S390_IPL_TYPE_QEMU_SCSI should not appear as an ipl_type once the device is found, remove that specific case from other existing switches and allow it to land in the default case, which will generally result in an immediate error. Reviewed-by: Eric Farman Signed-off-by: Jared Rossi Reviewed-by: Jason J. Herne --- pc-bios/s390-ccw/main.c | 13 ++++++++++--- pc-bios/s390-ccw/virtio-blkdev.c | 1 - pc-bios/s390-ccw/virtio.c | 5 ----- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c index 8fc1cbf653..6ab2b8f75b 100644 --- a/pc-bios/s390-ccw/main.c +++ b/pc-bios/s390-ccw/main.c @@ -261,8 +261,16 @@ static bool find_boot_device(void) vdev->selected_scsi_device.channel =3D iplb->scsi.channel; vdev->selected_scsi_device.target =3D iplb->scsi.target; vdev->selected_scsi_device.lun =3D iplb->scsi.lun; - blk_schid.ssid =3D iplb->scsi.ssid & 0x3; - found =3D find_subch(iplb->scsi.devno); + vdev->ipl_type =3D iplb->scsi.bus; + switch (vdev->ipl_type) { + case S390_IPL_TYPE_CCW: + blk_schid.ssid =3D iplb->scsi.ssid & 0x3; + found =3D find_subch(iplb->scsi.devno); + break; + default: + puts("Unrecognized SCSI controller"); + break; + } break; case S390_IPL_TYPE_PCI: found =3D find_fid(iplb->pci.fid); @@ -346,7 +354,6 @@ static void ipl_pci_device(void) static void ipl_boot_device(void) { switch (virtio_get_device()->ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: case S390_IPL_TYPE_CCW: ipl_ccw_device(); break; diff --git a/pc-bios/s390-ccw/virtio-blkdev.c b/pc-bios/s390-ccw/virtio-blk= dev.c index 98b6cec3a0..83a1185dd5 100644 --- a/pc-bios/s390-ccw/virtio-blkdev.c +++ b/pc-bios/s390-ccw/virtio-blkdev.c @@ -253,7 +253,6 @@ int virtio_blk_setup_device(VDev *vdev) puts("Using virtio-blk."); =20 switch (vdev->ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: case S390_IPL_TYPE_CCW: return virtio_ccw_setup(vdev); case S390_IPL_TYPE_PCI: diff --git a/pc-bios/s390-ccw/virtio.c b/pc-bios/s390-ccw/virtio.c index a0d249db24..0b33544144 100644 --- a/pc-bios/s390-ccw/virtio.c +++ b/pc-bios/s390-ccw/virtio.c @@ -61,7 +61,6 @@ char *virtio_get_ring_area(int ring_num) int drain_irqs(void) { switch (vdev.ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: case S390_IPL_TYPE_CCW: return drain_irqs_ccw(vdev.schid); default: @@ -109,7 +108,6 @@ void vring_init(VRing *vr, VqInfo *info) bool vring_notify(VRing *vr) { switch (vdev.ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: case S390_IPL_TYPE_CCW: vr->cookie =3D virtio_ccw_notify(vdev.schid, vr->id, vr->cookie); break; @@ -130,7 +128,6 @@ bool vring_notify(VRing *vr) bool be_ipl(void) { switch (virtio_get_device()->ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: case S390_IPL_TYPE_CCW: return true; case S390_IPL_TYPE_PCI: @@ -231,7 +228,6 @@ int vring_wait_reply(void) int virtio_reset(VDev *vdev) { switch (vdev->ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: case S390_IPL_TYPE_CCW: return virtio_ccw_reset(vdev); case S390_IPL_TYPE_PCI: @@ -244,7 +240,6 @@ int virtio_reset(VDev *vdev) bool virtio_is_supported(VDev *vdev) { switch (vdev->ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: case S390_IPL_TYPE_CCW: return virtio_ccw_is_supported(vdev); case S390_IPL_TYPE_PCI: --=20 2.54.0 From nobody Sat Sep 26 22:15:44 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=1788205856; cv=none; d=zohomail.com; s=zohoarc; b=R2DpckbfLNRSJbOeWkA0atdtwOa9Q8+3wISTlmBGqDtJR6UFzDxnm2vAE2cFoGhMyAnT92nivh2ZAbtdOTJfCO3nrNZqur6Unoo/8LgCmep3FvzYu7/gmBzvvjZuM/hwcSx7nWnBR7A1u91v43G3ed3PQsngEF1PoO23ef0WEpY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205856; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=w7fFMiPAlJgF2NauW3RN6HQ4hoRl3Il3UO0MTyTfzNU=; b=LEuP8txKaMLYiXwxxwTFb6beo5/hu9Rdg4cEjkjnGcq3V8BnzHNO8PEPXfEHRDowd0A2cvhgDJVGtWF2VlDYApiMSvmyuQwXlao7ki1M/IjKsvFVPX+iNhqfpKA7M34bGAtm+X95v9cJ+0DQkQ8Ey20GKzbGT9WAN7AMsBKSzyk= 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 1788205856920402.18016494460016; Mon, 31 Aug 2026 12:50:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180d-0000Lw-5l; Mon, 31 Aug 2026 15:49:35 -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 1x180b-0000KE-Ru; Mon, 31 Aug 2026 15:49:33 -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 1x180a-0002cf-49; Mon, 31 Aug 2026 15:49:33 -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 67VIVldh3108193; Mon, 31 Aug 2026 19:49:30 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 4gbq54kgu8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:30 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.7/8.18.1.7) with ESMTP id 67VJfK94014187; Mon, 31 Aug 2026 19:49:29 GMT Received: from smtprelay05.wdc07v.mail.ibm.com ([172.16.1.72]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gcb8h7pxc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:29 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay05.wdc07v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnRcv34734806 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:28 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A89CA58056; Mon, 31 Aug 2026 19:49:27 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2289D58052; Mon, 31 Aug 2026 19:49:27 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=w7fFMiPAlJgF2NauW 3RN6HQ4hoRl3Il3UO0MTyTfzNU=; b=WnRP4jWJH1TqnQg3bcf2pOUm73EJvqm47 g86nOg+qqFP5qaCIfnoDs31jgfrWHmd1WBct8JDZE+laDvJ5JPsrSal5IERZ+9kG 0YqLRbVteIZObE1ImzP2EbRQ61VmFhGJVyUIPwClHDF0yK9xvPFZ4a18kVj+uIyV dUx7h3srZBF/EIuADPvSq/gPd77lt3o/kFXBSCUD+jV8FkgbU87Xvcmd1IEqjH5s F8OT8BPmqLVT3/gkbDUDv2ZHJUexMc6oCl/PGsaswjCVo3n+vzp7NYB/YR5+vKJ9 gNsECUUehQQxnmpAscKJEXkuLerLWVtEWz3FKLb+npvC+zz6Mz/sA== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com Subject: [PATCH v3 4/8] s390x/ipl: Add PCI and bus fields to IplBlockQemuScsi Date: Mon, 31 Aug 2026 15:49:15 -0400 Message-ID: <20260831194919.3830270-5-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfXyBSiimvZWhCy LHqvkCMZH1eYurHUjMcLoLcavbF0pzLoaPcjXqFVFez9DlY2J6JTmAlTr0lZrIYMX2E+0q3JQkx 2yUkdJ5JUXUjpsu6XHrPaKMHKZVVX7QOLcC1mg9d9A4Xp6uTZ+WLF7jCE2KDMBra1PhDvhvoACf azgPg76GZoe1bhIUnurLFs1EsKJxoogBNUvv9DlIRaBjIA6Se7b75dPGf2GQxRP4Rz84fIpBt2h P0HNs2zIySb9zX1ytkkCH5ZscLH3NIrOyhynVE1KNAeg4/t/Mwoem5QIZPvG2aTZYPKUfBJvBHe uL2RaDODg5TkVb3rTMJzMf4WCTYJV2BDyk0IUzIdEx0OzcDolhT3w4n6nG5OWGXTMfOlVNsGudU w8aev7XGS9WdXeQq/KOGDdzFqtRE7dLLtm+59l7ILFcgq261aUyZMJ5zSWVtIQY+qLwOEnnF5/5 uw67c77S0HRXOG9PGXQ== X-Proofpoint-ORIG-GUID: spv5-OzN2HzRR2esB3V7YL5O3TBVOOVG X-Authority-Analysis: v=2.4 cv=CNgamxrD c=1 sm=1 tr=0 ts=6a95daca cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VnNF1IyMAAAA:8 a=-QlUfH9WTwOXCv0RR1sA:9 X-Proofpoint-GUID: spv5-OzN2HzRR2esB3V7YL5O3TBVOOVG X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfXwzSHvmD4Ku2N 3GOMwmyy2mjHqfYDNkI/phH6W5Lzid2FrcSXLy6r9Mz0QXlCDZYUnflvhg+9APf5rbFDLnshnlX WfxwbFD8Lzzis7sytUMGYuVDl9060Sc= 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 bulkscore=0 suspectscore=0 phishscore=0 lowpriorityscore=0 priorityscore=1501 clxscore=1015 impostorscore=0 adultscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205859867154100 Content-Type: text/plain; charset="utf-8" From: Jared Rossi Rather than add a second non-architected IPLB type for scsi-pci devices, let's add the relevant fields to the existing struct so that it can handle both PCI and CCW scsi controllers. The PCI and CCW fields of the IplBlockQemuScsi are aligned with same offsets as the corresponding fields in IplBlockPci and IplBlockCcw for potential union access. Add comments for PCI/CCW specifics and also denote that the S390IplType enum values must fit in uint8_t. Reviewed-by: Eric Farman Signed-off-by: Jared Rossi Reviewed-by: Jason J. Herne --- hw/s390x/ipl.c | 1 + hw/s390x/ipl.h | 2 ++ include/hw/s390x/ipl/qipl.h | 13 +++++++++---- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index ba69ee89bb..6969e11b27 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -563,6 +563,7 @@ static bool s390_build_iplb(DeviceState *dev_st, IplPar= ameterBlock *iplb) iplb->scsi.lun =3D cpu_to_be32(sd->lun); iplb->scsi.target =3D cpu_to_be16(sd->id); iplb->scsi.channel =3D cpu_to_be16(sd->channel); + iplb->scsi.bus =3D S390_IPL_TYPE_CCW; iplb->scsi.devno =3D cpu_to_be16(ccw_dev->sch->devno); iplb->scsi.ssid =3D ccw_dev->sch->ssid & 3; break; diff --git a/hw/s390x/ipl.h b/hw/s390x/ipl.h index 772566bb11..580f42aa4a 100644 --- a/hw/s390x/ipl.h +++ b/hw/s390x/ipl.h @@ -86,6 +86,8 @@ struct S390IPLState { uint16_t devno; }; QEMU_BUILD_BUG_MSG(offsetof(S390IPLState, iplb) & 3, "alignment of iplb wr= ong"); +QEMU_BUILD_BUG_MSG(offsetof(IplBlockQemuScsi, fid) !=3D offsetof(IplBlockP= ci, fid), + "iplb fields misaligned across bus types"); =20 static inline bool iplb_valid_len(IplParameterBlock *iplb) { diff --git a/include/hw/s390x/ipl/qipl.h b/include/hw/s390x/ipl/qipl.h index 69b0023ea3..e733c6ce31 100644 --- a/include/hw/s390x/ipl/qipl.h +++ b/include/hw/s390x/ipl/qipl.h @@ -29,7 +29,7 @@ enum S390IplType { S390_IPL_TYPE_CCW =3D 0x02, S390_IPL_TYPE_PCI =3D 0x04, S390_IPL_TYPE_PV =3D 0x05, - S390_IPL_TYPE_QEMU_SCSI =3D 0xff + S390_IPL_TYPE_QEMU_SCSI =3D 0xff /* Max value, must fit in uint8_t */ }; typedef enum S390IplType S390IplType; =20 @@ -123,9 +123,14 @@ struct IplBlockQemuScsi { uint32_t lun; uint16_t target; uint16_t channel; - uint8_t reserved0[77]; - uint8_t ssid; - uint16_t devno; + uint8_t bus; + uint8_t reserved0[76]; + uint8_t ssid; /* CCW only */ + uint16_t devno; /* CCW only */ + uint8_t reserved1[216]; + uint8_t opt; /* PCI only */ + uint8_t reserved2[3]; + uint32_t fid; /* PCI only */ } QEMU_PACKED; typedef struct IplBlockQemuScsi IplBlockQemuScsi; =20 --=20 2.54.0 From nobody Sat Sep 26 22:15:44 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=1788205837; cv=none; d=zohomail.com; s=zohoarc; b=VMwcMLZJYSVIhmOeJeqb20k8egSELD+qB2PukVDVaYJC0v+msHGr3Aue6j19KTeSG836061lnva2L7AiLastaCHu6u0oPH4M+V9W7SqVnBjRHBdzoFYVVgZLFHHQ3NkII/EdulFEUQcThHyx8zcNB+sAQcS6kQE+bOqrb1J8WAQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205837; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=TcrP/asZ1aRGHrgtqHxYHFyagOlxTqH4UnirVRKx7QM=; b=VF5j6RGW0ovk6Zv5p4DATA/r8/dcJ6NJF7M4PIheQWLVJZPwZ2aHFMEwGK0xGsktI4yLznbucePZ4Exrim+BWyLx6SCUCRus4/+b0yYaxb/LKnUHbgOQLQp1OeMVyAXlLp17mBJivszdd7Ijv9edTLNCYk1SjORo164eWJeChW0= 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 1788205837612413.3957833161653; Mon, 31 Aug 2026 12:50:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180e-0000Mq-H6; Mon, 31 Aug 2026 15:49: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 1x180c-0000Kw-AB; Mon, 31 Aug 2026 15:49: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 1x180a-0002cs-Jv; Mon, 31 Aug 2026 15:49: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 67VIVUuX1234644; Mon, 31 Aug 2026 19:49:31 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 4gbq3r3fyv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:30 +0000 (GMT) Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.18.1.7/8.18.1.7) with ESMTP id 67VJfiCm026976; Mon, 31 Aug 2026 19:49:29 GMT Received: from smtprelay02.dal12v.mail.ibm.com ([172.16.1.4]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 4gccexyjam-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:29 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay02.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnTCQ21562018 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:29 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id EE0E758056; Mon, 31 Aug 2026 19:49:28 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 6756058052; Mon, 31 Aug 2026 19:49:28 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=TcrP/asZ1aRGHrgtq HxYHFyagOlxTqH4UnirVRKx7QM=; b=ZSiD+0DcJG6SkbgTPFi4Jy9Hu3BUn/z/F NGkyronCYIRE5Hr4+7BUM7x7wUnmyI5QizsGcVXQi63xZ/UkehMBvQq/yjQ/PlNF JtiGmeeqfkiPK3xdCk8qcaY2jYjEX6YUiiaOB+IucS8iVooZ1Y5W8395kUJy6fXo 204EPOzbRbd0jrAOfqhYCjvxbUkyXr2JbqQ0GR91YoEE6SRdEoX0CDMqJ3OcDup5 7yoiOO+ML3l0hPADrziicHUFsrAbIqQj7Cyks+EUlIw8IXulUP/B20PMyhNY4fq7 L1ElQxgA/KW+11rCPbzBs8/HZGi24CABXooFsHorUUUJv/bGnqCcQ== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com Subject: [PATCH v3 5/8] pc-bios/s390-ccw: Abstract virtio_run() for generic use Date: Mon, 31 Aug 2026 15:49:16 -0400 Message-ID: <20260831194919.3830270-6-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=EIc2FVZC c=1 sm=1 tr=0 ts=6a95daca cx=c_pps a=aDMHemPKRhS1OARIsFnwRA==:117 a=aDMHemPKRhS1OARIsFnwRA==:17 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=uAbxVGIbfxUO_5tXvNgY:22 a=VnNF1IyMAAAA:8 a=0PGiSlKGR9UV7cgr1PYA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfXw/EScuzKZn7V EEBRD06beo1nKKualmYCiyAC/zqJjUseNbdOWjhK62x/ZwxIJK9RUB5rF27JG+B0Z/cCovGyaZO bCgGF4sEJRa3M08/cza41u7Yyt3Sy+yTA4qbZFI2EM+58hdNr4t0CRJwa9h4TBBwVvFczZXt/fC agyVIm0zSAq5hIKejf19C/TWsqI7CnHxd7en/NiFhM3auhVgRMrYcin6R1zlWnBw3aKmI0JAWvq 1d4AgOfhE1CAEDU5Ni5YKgEsPttkB7p3riaL2zRxKC+G8OfCKwawcFKaIlIHH9BLBpsKmWhF1UQ XV0cnq6VhYIGAU6cSPsDHPsq/rQqjbprsYAFB4yOx3E8bIaCT6eQq5Xy3385YyKOnp+djRnc84V Kake0QjWyV45sv5u6/RvN0hd6eTDt/qRRmhQhZRNT/TzMT8LqSySIKqqnmAbvYjzvANniIyY++Z c8wd+kk4IEAPMoxpKrw== X-Proofpoint-GUID: UBoih_7GcWc0IQXEcBLI7lUgCcUMSOLp X-Proofpoint-ORIG-GUID: UBoih_7GcWc0IQXEcBLI7lUgCcUMSOLp X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfXzAGutReg0pW1 sB4dUInO42g5XHNJxM8BOdCVGv7AOq9PPGAP5h+OAWnufRiJxHOVur7jC/1zrcb7F5LADJrjpap gjS38LJwYAYdNh8Td6E6lZic3X2wrUg= 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 impostorscore=0 suspectscore=0 priorityscore=1501 clxscore=1015 phishscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205839253154100 Content-Type: text/plain; charset="utf-8" From: Jared Rossi The existing virtio_ccw_run() actually has no dependency on CCW. Rather than add a case for non-ccw devices, we can just put the main logic right in the virtio_run() call so that it can be used for other bus types directly. Reviewed-by: Eric Farman Signed-off-by: Jared Rossi Reviewed-by: Jason J. Herne --- pc-bios/s390-ccw/virtio-ccw.c | 17 ----------------- pc-bios/s390-ccw/virtio-ccw.h | 1 - pc-bios/s390-ccw/virtio.c | 16 +++++++++++----- 3 files changed, 11 insertions(+), 23 deletions(-) diff --git a/pc-bios/s390-ccw/virtio-ccw.c b/pc-bios/s390-ccw/virtio-ccw.c index 5cb2158ed2..ea5dbc2857 100644 --- a/pc-bios/s390-ccw/virtio-ccw.c +++ b/pc-bios/s390-ccw/virtio-ccw.c @@ -107,23 +107,6 @@ long virtio_ccw_notify(SubChannelId schid, int vq_idx,= long cookie) vq_idx, cookie); } =20 -int virtio_ccw_run(VDev *vdev, int vqid, VirtioCmd *cmd) -{ - VRing *vr =3D &vdev->vrings[vqid]; - int i =3D 0; - - do { - vring_send_buf(vr, cmd[i].data, cmd[i].size, - cmd[i].flags | (i ? VRING_HIDDEN_IS_CHAIN : 0)); - } while (cmd[i++].flags & VRING_DESC_F_NEXT); - - vring_wait_reply(); - if (drain_irqs()) { - return -1; - } - return 0; -} - int virtio_ccw_reset(VDev *vdev) { return run_ccw(vdev, CCW_CMD_VDEV_RESET, NULL, 0, false); diff --git a/pc-bios/s390-ccw/virtio-ccw.h b/pc-bios/s390-ccw/virtio-ccw.h index a506767eaa..43d21906e5 100644 --- a/pc-bios/s390-ccw/virtio-ccw.h +++ b/pc-bios/s390-ccw/virtio-ccw.h @@ -16,7 +16,6 @@ extern SubChannelId blk_schid; /* virtio-ccw.c */ int drain_irqs_ccw(SubChannelId schid); bool virtio_ccw_is_supported(VDev *vdev); -int virtio_ccw_run(VDev *vdev, int vqid, VirtioCmd *cmd); long virtio_ccw_notify(SubChannelId schid, int vq_idx, long cookie); int virtio_ccw_setup(VDev *vdev); int virtio_ccw_reset(VDev *vdev); diff --git a/pc-bios/s390-ccw/virtio.c b/pc-bios/s390-ccw/virtio.c index 0b33544144..34c5e6ee22 100644 --- a/pc-bios/s390-ccw/virtio.c +++ b/pc-bios/s390-ccw/virtio.c @@ -70,13 +70,19 @@ int drain_irqs(void) =20 int virtio_run(VDev *vdev, int vqid, VirtioCmd *cmd) { - switch (vdev->ipl_type) { - case S390_IPL_TYPE_QEMU_SCSI: - case S390_IPL_TYPE_CCW: - return virtio_ccw_run(vdev, vqid, cmd); - default: + VRing *vr =3D &vdev->vrings[vqid]; + int i =3D 0; + + do { + vring_send_buf(vr, cmd[i].data, cmd[i].size, + cmd[i].flags | (i ? VRING_HIDDEN_IS_CHAIN : 0)); + } while (cmd[i++].flags & VRING_DESC_F_NEXT); + + vring_wait_reply(); + if (drain_irqs()) { return -1; } + return 0; } =20 void vring_init(VRing *vr, VqInfo *info) --=20 2.54.0 From nobody Sat Sep 26 22:15:44 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=1788205819; cv=none; d=zohomail.com; s=zohoarc; b=lkafPXBCt/Fst3gfD542FN8oN2uaVkgRdUUC82mPtcJgDJopZuE5UGEni+txcAlExshu7HrOA6y50yqv1P79CUFl6BvWMAQOydGhRjVqoPaY/EL8zRfUk1XeGMN5CzybxZ+N8x+gCCa6UQ7KNfXZOYKF0oiQCX/7QrNOYsHsxlc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205819; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=kCIuRqC1KVYiP9ggru0AFmuEihxTSVjItO2jS3Ly2ZM=; b=JqzyieTUBahrRzXfs9xXeRnzKbdxWe1pMHrK9ZRFP/IyFsHJ2JLU6Ary0Vf1xzDn9BnSbHkk5hsp5fm4AtSBslyI4rmoT2iVBvrMMvWJO7dELICgNCrLhc0Xrj8Cdt0PWv6qvf54k606Q3mH9Xk7O68crBJwyyuzPQWQF0XI/M8= 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 1788205819964336.4127652275182; Mon, 31 Aug 2026 12:50:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180g-0000Na-CS; Mon, 31 Aug 2026 15:49: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 1x180e-0000Mo-8W; Mon, 31 Aug 2026 15:49: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 1x180c-0002de-Ex; Mon, 31 Aug 2026 15:49:36 -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 67VIVm6p3116228; Mon, 31 Aug 2026 19:49: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 4gbpx5bhex-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49: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.7/8.18.1.7) with ESMTP id 67VJfHT5000446; Mon, 31 Aug 2026 19:49:31 GMT Received: from smtprelay05.dal12v.mail.ibm.com ([172.16.1.7]) by ppma21.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gcarjysew-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:31 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay05.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnUR721561882 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:30 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 6B2F15805E; Mon, 31 Aug 2026 19:49:30 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D9E7158052; Mon, 31 Aug 2026 19:49:29 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=kCIuRqC1KVYiP9ggr u0AFmuEihxTSVjItO2jS3Ly2ZM=; b=RQwDZR5kYY8pOixlvKNoiyP95SF2QimLn AvqFA5om0Vszb2PUZlBxGzdMBGpuMRyTU6lGMey/mS8A184qF+2FqPzGodqG46OC gADZTlTh8AApR/dU+bZA57r+zeZd4n2yfLqP/fPP/xEEwyR/n/EnjAaZccZMxgfB 8LtfjIg4sl7sejmRilSokl5rNehL3fGrAfPuFAlhgORftRPB5NUYKm8FehGIvZck ykpIVkn7yv29t5AGZ42fHe1TcVhQNUH7rbPytun4tg/8ddL7KMcMb/57mkfADbzo OSgqZP6VA3n6YhyEkQOG0vGjLyjDUON4o9BYAd6O3E4mi9/ZBfclg== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com Subject: [PATCH v3 6/8] pc-bios/s390-ccw: Add support for virtio-scsi-pci IPL Date: Mon, 31 Aug 2026 15:49:17 -0400 Message-ID: <20260831194919.3830270-7-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=PPc/P/qC c=1 sm=1 tr=0 ts=6a95dacc cx=c_pps a=GFwsV6G8L6GxiO2Y/PsHdQ==:117 a=GFwsV6G8L6GxiO2Y/PsHdQ==:17 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=iQ6ETzBq9ecOQQE5vZCe:22 a=VnNF1IyMAAAA:8 a=_aD-10DgKkLGNpmbtU8A:9 X-Proofpoint-GUID: 3F0m0aWWlkrVa_W-V6aKFOVxZXLQMv1S X-Proofpoint-ORIG-GUID: 3F0m0aWWlkrVa_W-V6aKFOVxZXLQMv1S X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX+ymGROWR/kPy D+Smrm4xOpRjG2MpzoNN8CNULAyodPTDs+V0VqFykGUA93N9HIqZWo5SC8ZZsrpTv6ABkSRrTP1 APy5mdJOf8gYpM8FJJhMadWJZs3TSoY= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX4LXB2SBxzUGb TH7OwWskS2SGTQt+kvLQO8wbfnETw1FZ8yNI3L4P3lgoEQ59TzaDzgIF7FiAuHxEoKmcBqgPcUm d2hPMdafUYbX+0nmxeDIXJLGF6AFWl/FYVoV/rpYhnmtCdLeLIOh6WbW5eaic/pbkNvwy9M4Xph cEo9ThRN2pQAC8Sxf5qaZrwRRy6bAqMiM0ZpI49GxRA0jmh5qORCKUi0JCR6kfx+jXU4GGuEml1 /Yj4+0HsCPB4mFR4yABYa/YY4Bp/07KpIbn9uNcsSU9avUUDwtOSuW/95V4z+LfWANRcn/YivCI qspSTIYOtN5b15cMVFEWuBa0M/UvadZSXx3TYDAGGq+eJAhU7qhXsBsGkv9W5CgmOXC4LFWkh5v 1pHfM+NXFJ3upVuBzchCZq8TgSD5Gi0IQib9hMecG90dtOIoo1poJf2vPf+nmLmNkFleAXcZrdf bVmIGt81AZhOWUsziPA== 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 phishscore=0 adultscore=0 suspectscore=0 bulkscore=0 spamscore=0 priorityscore=1501 impostorscore=0 malwarescore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205823045154100 Content-Type: text/plain; charset="utf-8" From: Jared Rossi Read virtio-pci configuration and configure virt-queue for scsi devices. Also add check for virtio setup failures when doing scsi setup and return early if it fails instead of waiting for subsequent failure. Signed-off-by: Jared Rossi Reviewed-by: Eric Farman Reviewed-by: Jason J. Herne --- pc-bios/s390-ccw/main.c | 3 ++- pc-bios/s390-ccw/virtio-pci.c | 30 ++++++++++++++++++++++++++++++ pc-bios/s390-ccw/virtio-scsi.c | 18 +++++++++++++++++- 3 files changed, 49 insertions(+), 2 deletions(-) diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c index 6ab2b8f75b..a2a24b024f 100644 --- a/pc-bios/s390-ccw/main.c +++ b/pc-bios/s390-ccw/main.c @@ -273,6 +273,7 @@ static bool find_boot_device(void) } break; case S390_IPL_TYPE_PCI: + vdev->scsi_device_selected =3D false; found =3D find_fid(iplb->pci.fid); break; default: @@ -333,13 +334,13 @@ static void ipl_pci_device(void) { VDev *vdev =3D virtio_get_device(); vdev->is_cdrom =3D false; - vdev->scsi_device_selected =3D false; =20 if (virtio_pci_setup_device()) { return; } =20 switch (vdev->dev_type) { + case VIRTIO_ID_SCSI: case VIRTIO_ID_BLOCK: if (virtio_setup() =3D=3D 0) { zipl_load(); /* only return on error */ diff --git a/pc-bios/s390-ccw/virtio-pci.c b/pc-bios/s390-ccw/virtio-pci.c index 231ab6e04d..277c3ea68d 100644 --- a/pc-bios/s390-ccw/virtio-pci.c +++ b/pc-bios/s390-ccw/virtio-pci.c @@ -52,6 +52,10 @@ void virtio_pci_id2type(VDev *vdev, uint16_t device_id) case 0x1001: vdev->dev_type =3D VIRTIO_ID_BLOCK; break; + case 0x1048: + case 0x1004: + vdev->dev_type =3D VIRTIO_ID_SCSI; + break; default: vdev->dev_type =3D 0; } @@ -199,6 +203,26 @@ static int virtio_pci_get_blk_config(void) return rc; } =20 +static int virtio_pci_get_scsi_config(void) +{ + VirtioScsiConfig *cfg =3D &virtio_get_device()->config.scsi; + int rc =3D vpci_read_flex(d_cap.off, d_cap.bar, cfg, sizeof(VirtioScsi= Config)); + + /* all fields of scsi config must be byte swapped */ + cfg->num_queues =3D bswap32(cfg->num_queues); + cfg->seg_max =3D bswap32(cfg->seg_max); + cfg->max_sectors =3D bswap32(cfg->max_sectors); + cfg->cmd_per_lun =3D bswap32(cfg->cmd_per_lun); + cfg->event_info_size =3D bswap32(cfg->event_info_size); + cfg->sense_size =3D bswap32(cfg->sense_size); + cfg->cdb_size =3D bswap32(cfg->cdb_size); + cfg->max_channel =3D bswap16(cfg->max_channel); + cfg->max_target =3D bswap16(cfg->max_target); + cfg->max_lun =3D bswap32(cfg->max_lun); + + return rc; +} + static int virtio_pci_negotiate(void) { int i, rc; @@ -330,6 +354,7 @@ bool virtio_pci_is_supported(VDev *vdev) if (vdev->vendor_id =3D=3D PCI_VENDOR_VIRTIO) { switch (vdev->dev_type) { case VIRTIO_ID_BLOCK: + case VIRTIO_ID_SCSI: return true; default: return false; @@ -384,6 +409,11 @@ int virtio_pci_setup(VDev *vdev) vdev->cmd_vr_idx =3D 0; virtio_pci_get_blk_config(); break; + case VIRTIO_ID_SCSI: + vdev->nr_vqs =3D 3; + vdev->cmd_vr_idx =3D 2; + virtio_pci_get_scsi_config(); + break; default: puts("Unsupported virtio device"); return -ENODEV; diff --git a/pc-bios/s390-ccw/virtio-scsi.c b/pc-bios/s390-ccw/virtio-scsi.c index 9ea00c6fe6..ca02ff5989 100644 --- a/pc-bios/s390-ccw/virtio-scsi.c +++ b/pc-bios/s390-ccw/virtio-scsi.c @@ -16,6 +16,7 @@ #include "scsi.h" #include "virtio-scsi.h" #include "virtio-ccw.h" +#include "virtio-pci.h" #include "s390-time.h" #include "helper.h" =20 @@ -479,7 +480,22 @@ static int virtio_scsi_setup(VDev *vdev) =20 int virtio_scsi_setup_device(VDev *vdev) { - virtio_ccw_setup(vdev); + switch (vdev->ipl_type) { + case S390_IPL_TYPE_CCW: + if (virtio_ccw_setup(vdev)) { + puts("Setup failed for virtio-scsi-ccw"); + return 1; + } + break; + case S390_IPL_TYPE_PCI: + if (virtio_pci_setup(vdev)) { + puts("Setup failed for virtio-scsi-pci"); + return 1; + } + break; + default: + return 1; + } =20 if (vdev->config.scsi.sense_size !=3D VIRTIO_SCSI_SENSE_SIZE) { puts("Config: sense size mismatch"); --=20 2.54.0 From nobody Sat Sep 26 22:15:44 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=1788205857; cv=none; d=zohomail.com; s=zohoarc; b=ND2fSp48wvaYGudLSdcGy/ELikiDGGSszxCEvKevILyPFX6dXp9bewt9Pu79/qkveBBL/mOvSqycqQJhU4JMes9OlsJJnAB/ZzpFaNQSeC3KMyTNfx/ruvwKsu2tiVUamhOeKo1e+CPoZq8w2H41qwL9WiJLEoEydgnsIithUlY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205857; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=EH6UQznp8fBFHsD8YROn9TTw1HdXpFF2JuuHeVplu3c=; b=bnkVbZ9zZ6Eb9oKpzNo81BNhC8VLxyVG4ZXm1g2vMEP6vt1dRRcJTou0LWppToTKZidPWeHf2Kg0WlG28ZSwq4ap9KsuCWLFU9WvX43HqMLaRKfshJ2fm/7BX/BULEz5lwNY87ZO6rBCwk+jJ3GGr7zsI87fTXEtyK3B6kKWAzM= 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 1788205857058633.6758447647032; Mon, 31 Aug 2026 12:50:57 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180k-0000PA-0a; Mon, 31 Aug 2026 15:49: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 1x180f-0000NG-Mq; Mon, 31 Aug 2026 15:49:37 -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 1x180d-0002e8-Vl; Mon, 31 Aug 2026 15:49:37 -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 67VIVYC01234903; Mon, 31 Aug 2026 19:49:34 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 4gbq3r3g06-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:34 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.7/8.18.1.7) with ESMTP id 67VJfIrS012779; Mon, 31 Aug 2026 19:49:33 GMT Received: from smtprelay06.dal12v.mail.ibm.com ([172.16.1.8]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4gca4vyupb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:33 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay06.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnVxr12452494 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:31 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C2DAD5805E; Mon, 31 Aug 2026 19:49:31 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 387FD58052; Mon, 31 Aug 2026 19:49:31 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=EH6UQznp8fBFHsD8Y ROn9TTw1HdXpFF2JuuHeVplu3c=; b=UzznOXj9vfw5K/Kj4ZwEp1xragBzbf7+T 1nHb5H2n6/70Z3PSSKcJrLogjSaCd9YGOcUEPsCnK7v0aXrk6fsJY1L838Y5dwek Al6Jbbbd7GgQinE6N3wWjjs2Sj3AHRWTFcQ9oqlS6K9S5vZ2GgD71/M1sFjNpSnD XgQP2PSTfj0QSGd1RFRbvaGRK1N1RstB9yt45rGhFMe3ItVg89CySb88WO7vBZdz 26+vLXQQEYD8y0PRaZeuTCgMTyGbUzvm0tCzI/xEJHxTbvR5LTekGGM1GO0gt+Jg TTxIigCyNwl4w9qaZbvDRneSfe8SLI8cKPnHBL+dC6claQvH/inkg== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com Subject: [PATCH v3 7/8] s390x: Find scsi-pci boot device and build IPLB Date: Mon, 31 Aug 2026 15:49:18 -0400 Message-ID: <20260831194919.3830270-8-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=EIc2FVZC c=1 sm=1 tr=0 ts=6a95dace cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=uAbxVGIbfxUO_5tXvNgY:22 a=VnNF1IyMAAAA:8 a=GdLXXov1tT0adLAbiZYA:9 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX4d7iOgVsFAst mx4deMhCCuDnxRBExF2yD+Nyk5ODSuP+9xO+X82uePsHaUhQsBUPXAI+qZBu1K/wCy8TdA78nwz mBUiSoBLO8rXxv4e9WgVJEmWvivUEkz5co/7l/0D2Jvd2ypWYo4ONIDkxy4fTcqE7yg2+PErTb3 oy7SamNjtyWARBJUf+phmndHvcNKztZLi/hH08ZO7sXK1Tuq2bAzLkoQ10QpOrDVTJiNsDdJkkR 6NezKZsUgZxlXvShjHR1rB5H5pVCyy6rgOuVrz8zzIZy1PaZ2oyHRX6v2SHUQoDPRNm31KMMo/f zb+8aO/CllaGi9ggw15BoLgQUKG6XV5pvSuxbCAwqkqKCMoc5DTOzGhbiwWDlFgk4HzLzJuYLRp iDn66u06W1XmLBFZ/D+vC3rYx/3T5Gh0Zn+nm9hyqlrz4Al1vviS6s+wmZw6t5SlvVoSh0DIQXp QCsMBYatYXyeWaYhEDQ== X-Proofpoint-GUID: PcIIYphV3HkM9Suql1OU-kPJzY3uGKT2 X-Proofpoint-ORIG-GUID: PcIIYphV3HkM9Suql1OU-kPJzY3uGKT2 X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX+zyJxfErWonp 1nGfNw4ZrcVDvk1r8H0TLDC0uw2NALwRXWsKFWj2sltkm1+oPPiT0UCjKyxmjkfxzbItA0l9MgM nxtbQ6CFbwmw7jVw0I6J6XGPZruXpNU= 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 impostorscore=0 suspectscore=0 priorityscore=1501 clxscore=1015 phishscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205858368158501 Content-Type: text/plain; charset="utf-8" From: Jared Rossi Add logic to identify a virtio-pci scsi controller and target lun with assigned bootindex, then build IPLB for it. Unfence PCI case for scsi devices in BIOS. Signed-off-by: Jared Rossi Reviewed-by: Eric Farman Reviewed-by: Jason J. Herne Tested-by: Eric Farman --- hw/s390x/ipl.c | 37 +++++++++++++++++++++++++++++++++++++ pc-bios/s390-ccw/main.c | 3 +++ 2 files changed, 40 insertions(+) diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index 6969e11b27..0cab043b12 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -402,6 +402,7 @@ static CcwDevice *s390_get_ccw_device(DeviceState *dev_= st, int *devtype) } =20 #define PCI_DEVTYPE_VIRTIO 0x05 +#define PCI_DEVTYPE_SCSI 0x06 =20 static S390PCIBusDevice *s390_get_pci_device(DeviceState *dev_st, int *dev= type) { @@ -417,6 +418,26 @@ static S390PCIBusDevice *s390_get_pci_device(DeviceSta= te *dev_st, int *devtype) if (pbdev) { tmp_dt =3D PCI_DEVTYPE_VIRTIO; } + } else { + SCSIDevice *sd =3D (SCSIDevice *) + object_dynamic_cast(OBJECT(dev_st), TYPE_SCSI_DEVICE); + if (sd) { + SCSIBus *sbus =3D scsi_bus_from_device(sd); + VirtIODevice *vdev =3D (VirtIODevice *) + object_dynamic_cast(OBJECT(sbus->qbus.parent), + TYPE_VIRTIO_DEVICE); + if (vdev) { + pci_dev =3D (PCIDevice *) + object_dynamic_cast(OBJECT(qdev_get_parent_bus(DEV= ICE(vdev))->parent), + TYPE_PCI_DEVICE); + if (pci_dev) { + pbdev =3D s390_pci_find_dev_by_pci(s390_get_phb(),= pci_dev); + if (pbdev) { + tmp_dt =3D PCI_DEVTYPE_SCSI; + } + } + } + } } } if (devtype) { @@ -621,6 +642,22 @@ static bool s390_build_iplb(DeviceState *dev_st, IplPa= rameterBlock *iplb) iplb->pbt =3D S390_IPL_TYPE_PCI; iplb->pci.fid =3D cpu_to_be32(pbdev->fid); break; + case PCI_DEVTYPE_SCSI: + sd =3D SCSI_DEVICE(dev_st); + scsi_lp =3D object_property_get_str(OBJECT(sd), "loadparm", NU= LL); + if (scsi_lp && strlen(scsi_lp) > 0) { + lp =3D scsi_lp; + } + iplb->len =3D cpu_to_be32(S390_IPLB_MIN_PCI_LEN); + iplb->blk0_len =3D + cpu_to_be32(S390_IPLB_MIN_PCI_LEN - S390_IPLB_HEADER_LEN); + iplb->pbt =3D S390_IPL_TYPE_QEMU_SCSI; + iplb->scsi.lun =3D cpu_to_be32(sd->lun); + iplb->scsi.target =3D cpu_to_be16(sd->id); + iplb->scsi.channel =3D cpu_to_be16(sd->channel); + iplb->scsi.bus =3D S390_IPL_TYPE_PCI; + iplb->scsi.fid =3D cpu_to_be32(pbdev->fid); + break; default: return false; } diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c index a2a24b024f..d2a2ac3138 100644 --- a/pc-bios/s390-ccw/main.c +++ b/pc-bios/s390-ccw/main.c @@ -267,6 +267,9 @@ static bool find_boot_device(void) blk_schid.ssid =3D iplb->scsi.ssid & 0x3; found =3D find_subch(iplb->scsi.devno); break; + case S390_IPL_TYPE_PCI: + found =3D find_fid(iplb->scsi.fid); + break; default: puts("Unrecognized SCSI controller"); break; --=20 2.54.0 From nobody Sat Sep 26 22:15:44 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=1788205840; cv=none; d=zohomail.com; s=zohoarc; b=C9SqP85+ZQsECwlIzjrpiuS9cPFgtmA4X1DfzRA/YNlWCbC7Bw5H5QFTq0gt24HoD7KohujsRmDarPyLLu/cc5jiXPxxe1ZhZpuOWcwElV8QQhKm83YNiOv6w3OOADZVADrKtRNIcIYp5r0IHU91wLvQNqAJgcqOEURdxeeriac= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1788205840; 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:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=FxCr26HQGGPcNVJuIcyctYV5TU9dYfbvI5MmrgksQyA=; b=gYEnEIP/v9z8TrdcgernyIhcYaI05Meo1wE39nj0fNTIwhi2n81JQxuG/MB4suxKdI/e39hz6gUAzd+UPGRRGiD9X2IiewV1181Prpla3KSe5NgcIyYIF/o+z1aoY3KIfA8zeiV1Evi+u1OWePlRr5Fs7Pd5PVUIQBeV5HQbtBc= 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 1788205840668578.2968380232408; Mon, 31 Aug 2026 12:50:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x180k-0000PP-Hc; Mon, 31 Aug 2026 15:49: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 1x180g-0000O3-NT; Mon, 31 Aug 2026 15:49: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 1x180e-0002eD-M8; Mon, 31 Aug 2026 15:49:38 -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 67VIVYmu3115264; Mon, 31 Aug 2026 19:49:35 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 4gbpx5bhf9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49: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.7/8.18.1.7) with ESMTP id 67VJfNYh028717; Mon, 31 Aug 2026 19:49:34 GMT Received: from smtprelay03.dal12v.mail.ibm.com ([172.16.1.5]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 4gcbyg7kj3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 31 Aug 2026 19:49:34 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (smtpav04.dal12v.mail.ibm.com [10.241.53.103]) by smtprelay03.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 67VJnX2u64684292 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Aug 2026 19:49:33 GMT Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3812A5805E; Mon, 31 Aug 2026 19:49:33 +0000 (GMT) Received: from smtpav04.dal12v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9983158052; Mon, 31 Aug 2026 19:49:32 +0000 (GMT) Received: from t15.ibmuc.com (unknown [9.61.69.254]) by smtpav04.dal12v.mail.ibm.com (Postfix) with ESMTP; Mon, 31 Aug 2026 19:49: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=FxCr26HQGGPcNVJuI cyctYV5TU9dYfbvI5MmrgksQyA=; b=UL7OhOarTRc8OPpnPNOAH4Tvt3832eKVa krTdckOnkm28+3aLjfh7SDTUj4lWUmE5dJovAYCucy95B22mTzQMAhDv2mlAXVJw TsRtNLudzd8dKucn/BN+1O0FePrp8waSssW9f/tvqafVuzvpWf18lUFccNpEYKFD C1+gMFSebBiZPp5Kf8LQVvE5AWM1NW3mWZ5Chu2ICkeRE70kraT20xZAdf4HaU/u ROsON6opyw4SaU8qPmce7ka3G4CVpSHqm1sHpaR3dmFC6gZnt4oUQSWiie6kT3o7 ab4Lnl4Zj7VnMct+myzDmVnW7ygrcUC1r9nm3OuwOtl/UxH/tzxZA== From: jrossi@linux.ibm.com To: qemu-devel@nongnu.org, qemu-s390x@nongnu.org, cohuck@redhat.com, mjrosato@linux.ibm.com Cc: farman@linux.ibm.com, jjherne@linux.ibm.com, jrossi@linux.ibm.com, zycai@linux.ibm.com Subject: [PATCH v3 8/8] tests/qtest: Add s390x PCI SCSI fallback test to cdrom-test.c Date: Mon, 31 Aug 2026 15:49:19 -0400 Message-ID: <20260831194919.3830270-9-jrossi@linux.ibm.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20260831194919.3830270-1-jrossi@linux.ibm.com> References: <20260831194919.3830270-1-jrossi@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=PPc/P/qC c=1 sm=1 tr=0 ts=6a95dacf cx=c_pps a=AfN7/Ok6k8XGzOShvHwTGQ==:117 a=AfN7/Ok6k8XGzOShvHwTGQ==:17 a=Sv0fKeRqtYgA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=iQ6ETzBq9ecOQQE5vZCe:22 a=VnNF1IyMAAAA:8 a=MvDj_lKWWGcuVSP3geIA:9 X-Proofpoint-GUID: 51pxN89feuFZ58BeuUbKKZKdZ7PuStlB X-Proofpoint-ORIG-GUID: 51pxN89feuFZ58BeuUbKKZKdZ7PuStlB X-Proofpoint-Spam-Info: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX25KVFR63EDJ3 RcdgoC9HrZdqHAxyAV+0EKjQbsCSf40RluasZ7h3AHQSumPjJK1ztZM3trXuvYLzDykz6vCvlIZ FMARP+mPw40H6r14NrFbjTANzU171K0= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwODMxMDE2OSBTYWx0ZWRfX7pmdwK1MrqF6 FXMBEjkDmfV7NG7F8I4kFa0tsfxYhaKj1Byu6wsdatmCcsT+REtA0HcfLngf8bVpZ5Ucf+4eiWj 8d/R2SsfnHFxTs8QLQBOXgoeQ5Ha6KJFf77+ZsUbHDOXhBt0JDiPEX+CKmjDtkKY5BqrQjDtLVS JLONBnGb9i7Lr+AW02zHoEJ1Eb6kVNOTZ6EZ9/fmPJ8Hy6oH4l9QKK4yTyxQV2Pr6Mp28gEeRI6 tdRI2BZyErv7ykpSYV9QyQj3ZAEfYC1vVqim0UN0GNTzK+NsR7UCniqDPXYdWweMvFkA5QM8SRK dr4RamX3RmhMji2nTbcSXbXZlZs+wf1d8WXb63XtZ4Qwm9u7Xxm7UXNbzQLms4VBzteTmqX+2KU QEglbJv7bbd5ktgyXJeHSvrtNU7mTZik9Daf6UUAcRz28d3+m/CT99hjs1grxhldJfff2XeY4pR DNDaYSoS/wNZi47bjDw== 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-08-31_06,2026-08-31_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 phishscore=0 adultscore=0 suspectscore=0 bulkscore=0 spamscore=0 priorityscore=1501 impostorscore=0 malwarescore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2608310169 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=jrossi@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: 1788205842360158500 Content-Type: text/plain; charset="utf-8" From: Jared Rossi Add a test to verify that a guest can use a PCI controlled CD as a fallback= boot device after a failed CCW IPL. Signed-off-by: Jared Rossi Reviewed-by: Eric Farman Tested-by: Eric Farman Tested-by: Joshua Daley --- tests/qtest/cdrom-test.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/qtest/cdrom-test.c b/tests/qtest/cdrom-test.c index a65854d2bc..ab34930404 100644 --- a/tests/qtest/cdrom-test.c +++ b/tests/qtest/cdrom-test.c @@ -253,6 +253,14 @@ static void add_s390x_tests(void) "-drive if=3Dnone,id=3Dd1,media=3Dcdrom,file= =3D", test_cdboot); } + if (qtest_has_device("virtio-scsi-pci")) { + qtest_add_data_func("cdrom/boot/pci-scsi-fallback-from-blk-ccw", + "-device virtio-scsi-pci -device virtio-serial= " + "-device virtio-blk-ccw,drive=3Dd1,bootindex= =3D1 " + "-drive driver=3Dnull-co,read-zeroes=3Don,if= =3Dnone,id=3Dd1 " + "-device scsi-cd,drive=3Dd2,bootindex=3D2 " + "-drive if=3Dnone,id=3Dd2,media=3Dcdrom,file= =3D", test_cdboot); + } } =20 int main(int argc, char **argv) --=20 2.54.0