From nobody Sat Apr 11 18:34:06 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=1775874469; cv=none; d=zohomail.com; s=zohoarc; b=j9UaFMr2xnxNr41jeAJShnKAAVtyidASynkxitqiyUM7qvJ6C1Nl2HLeeVVJhKGk9SKEWTT7nbbxHad54JKuE9UmWM+7wigoynrNdnJb8sNGAXyceous1XAxXw5qHWosTpkNK6jadtE5eZt4FdTRWOcAkP6xQtcKRMXfy7hca0k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1775874469; 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=Ju3TdCo9F+qwi0b5Ke4joOc8d4Yfdtaokv5jWfReqNc=; b=VodUyVjfUr0lQFeAHCot+xdUmR1HAhrABklfawumvAxk0qEp5aXU98YbVl2qbW2IlHVihu0kQYJtylfQ/VOzYecIh0GtBXdh1po09FlwJ56l8BnlJxXDa+qXj2+D0PAIC3XlKVfo+o7jy8MkfKU0sS7BFaus4XbtSMggGx4cRss= 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 lists.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1775874469083938.9709288946508; Fri, 10 Apr 2026 19:27:49 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wBO3w-00027j-22; Fri, 10 Apr 2026 22:27:08 -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 1wBO3t-00025q-VO; Fri, 10 Apr 2026 22:27:05 -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 1wBO3r-0000Mx-L3; Fri, 10 Apr 2026 22:27:05 -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 63B2F41m2480356; Sat, 11 Apr 2026 02:27:00 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 4dfbqk87f2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sat, 11 Apr 2026 02:27:00 +0000 (GMT) Received: from pps.filterd (ppma22.wdc07v.mail.ibm.com [127.0.0.1]) by ppma22.wdc07v.mail.ibm.com (8.18.1.2/8.18.1.2) with ESMTP id 63B0d9ZH007951; Sat, 11 Apr 2026 02:26:59 GMT Received: from smtprelay06.dal12v.mail.ibm.com ([172.16.1.8]) by ppma22.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4dcmg2u25v-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sat, 11 Apr 2026 02:26:59 +0000 Received: from smtpav03.wdc07v.mail.ibm.com (smtpav03.wdc07v.mail.ibm.com [10.39.53.230]) by smtprelay06.dal12v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 63B2Qw6n30736920 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sat, 11 Apr 2026 02:26:58 GMT Received: from smtpav03.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 0C6895805A; Sat, 11 Apr 2026 02:26:58 +0000 (GMT) Received: from smtpav03.wdc07v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 74DA358054; Sat, 11 Apr 2026 02:26:57 +0000 (GMT) Received: from WIN-DU0DFC9G5VV.ibm.com (unknown [9.61.252.248]) by smtpav03.wdc07v.mail.ibm.com (Postfix) with ESMTP; Sat, 11 Apr 2026 02:26:57 +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=Ju3TdCo9F+qwi0b5K e4joOc8d4Yfdtaokv5jWfReqNc=; b=GGxSd1w2+3VBNK4u7lcVhPrjU56Uhg5LC rQxHXhIgNWpz954Upd8qu/c+fZ1ioiKe6lp4qWFEHY4NqxII3NTWCmJDGJkk8WOa KD4tKn4uEYXTjDAlSFizsraZm9p8EKHO1AvY2ExFFoiFknktCpXmJC2JsfW7s6Jc pCYmgfxpWRXDX342HZDSeJidbtHXRO8WnV347idIR8+NEgs5QCQAeU5sEc3hFL8i +HDelw8AmJKCnzuMWwBEcOX0MiMn4MuKplaeb4Y3MLcdZ3ISNy/Ee/iypJ/H7Odp pDvF5XFJ+QPXlBrJKRsYMv1DfnELtFCVG9qaagLRQ/nPB8FE9i81A== From: Konstantin Shkolnyy To: mjrosato@linux.ibm.com Cc: alifm@linux.ibm.com, richard.henderson@linaro.org, iii@linux.ibm.com, david@kernel.org, cohuck@redhat.com, pasic@linux.ibm.com, borntraeger@linux.ibm.com, qemu-s390x@nongnu.org, qemu-devel@nongnu.org, Konstantin Shkolnyy Subject: [PATCH v2 10/15] s390x/pci: Move pba from S390PCIIOMMU to S390PCIBusDevice Date: Fri, 10 Apr 2026 21:26:13 -0500 Message-Id: <20260411022618.2136588-11-kshk@linux.ibm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260411022618.2136588-1-kshk@linux.ibm.com> References: <20260411022618.2136588-1-kshk@linux.ibm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Authority-Analysis: v=2.4 cv=I+9Vgtgg c=1 sm=1 tr=0 ts=69d9b174 cx=c_pps a=5BHTudwdYE3Te8bg5FgnPg==:117 a=5BHTudwdYE3Te8bg5FgnPg==:17 a=A5OVakUREuEA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=Y2IxJ9c9Rs8Kov3niI8_:22 a=VnNF1IyMAAAA:8 a=THYS1zffzJpO_GefUMYA:9 X-Proofpoint-GUID: g_d3pLlnRuvR_ERkW-q0ovc_GVEh4tI_ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNDExMDAxNiBTYWx0ZWRfXxQVtZ40bsOmk pIDbm1fk2+rUasJPTlJeavVYgwUn0rpZzOARunUL6BfVD0X8K9tMPKDSZ608ZSltvnFf2Pw8h9r AgxgdpSFv+YhZhop9ZKCVQK1LqF9jYIBukzVr4AplfwNNdaC6rnPJ3pXOiV0TowdTgMS/iBp75E uDmLjmG+ae0yt1PJN9hKphwDewdVhVyrPnZrjEu9/H170dLU+vQ9KDC4rWkEeoQvAnnfYuu+Web z5QhmZAkpRRWY0P6piiG9o7eFpJcBECK8PLwjzmpw8/nVMuQe+YI/R8880RHpxfcSL51Eo5aIrL MUII5HHMXpdceTkfpizaFje8Ri5cYpX+cFFLZUBhC3oNbCKXiO6YVrUEZMW/BUTgjCzVrqOKVHS g2YWVp8RcL+w+BQMbkTaOl3A0CVUX8NN+kJnU6KsThywx+cKUMd5LvyiycU3VingzuvD7frKUtJ WewMoaocqNVNwChdG2w== X-Proofpoint-ORIG-GUID: g_d3pLlnRuvR_ERkW-q0ovc_GVEh4tI_ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-04-10_07,2026-04-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 impostorscore=0 bulkscore=0 suspectscore=0 adultscore=0 lowpriorityscore=0 spamscore=0 malwarescore=0 clxscore=1015 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2604010000 definitions=main-2604110016 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=lists.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=kshk@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_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=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: 1775874472129154100 Content-Type: text/plain; charset="utf-8" This field is only used when S390PCIBusDevice exists, so it can be moved there to simplify S390PCIIOMMU which purpose is just to store the "root" AddressSpace. This also allows to save/restore this field during migration. Signed-off-by: Konstantin Shkolnyy --- hw/s390x/s390-pci-bus.c | 4 ++-- hw/s390x/s390-pci-inst.c | 8 ++++---- include/hw/s390x/s390-pci-bus.h | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c index b784196c9e..734af3a307 100644 --- a/hw/s390x/s390-pci-bus.c +++ b/hw/s390x/s390-pci-bus.c @@ -564,7 +564,7 @@ static IOMMUTLBEntry s390_translate_iommu(IOMMUMemoryRe= gion *mr, hwaddr addr, =20 trace_s390_pci_iommu_xlate(addr); =20 - if (addr < iommu->pba || addr > iommu->pal) { + if (addr < pbdev->pba || addr > iommu->pal) { error =3D ERR_EVENT_OORANGE; goto err; } @@ -601,7 +601,7 @@ static void s390_pci_ioat_replay(S390PCIBusDevice *pbde= v) hwaddr curr, end; S390PCIIOMMU *iommu =3D pbdev->iommu; =20 - curr =3D iommu->pba; + curr =3D pbdev->pba; end =3D iommu->pal; =20 if (pbdev->dm_mr) { diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c index f4ec299614..7680d87080 100644 --- a/hw/s390x/s390-pci-inst.c +++ b/hw/s390x/s390-pci-inst.c @@ -753,7 +753,7 @@ int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_= t r2, uintptr_t ra) goto err; } =20 - if (end < iommu->pba || start > iommu->pal) { + if (end < pbdev->pba || start > iommu->pal) { error =3D ERR_EVENT_OORANGE; goto err; } @@ -1026,7 +1026,7 @@ static int reg_ioat(CPUS390XState *env, S390PCIBusDev= ice *pbdev, ZpciFib fib, return -EINVAL; } =20 - iommu->pba =3D pba; + pbdev->pba =3D pba; iommu->pal =3D pal; pbdev->g_iota =3D g_iota; =20 @@ -1043,7 +1043,7 @@ void pci_dereg_ioat(S390PCIBusDevice *pbdev) { S390PCIIOMMU *iommu =3D pbdev->iommu; s390_pci_iommu_disable(pbdev); - iommu->pba =3D 0; + pbdev->pba =3D 0; iommu->pal =3D 0; pbdev->g_iota =3D 0; } @@ -1416,7 +1416,7 @@ int stpcifc_service_call(S390CPU *cpu, uint8_t r1, ui= nt64_t fiba, uint8_t ar, return 0; } =20 - stq_be_p(&fib.pba, pbdev->iommu->pba); + stq_be_p(&fib.pba, pbdev->pba); stq_be_p(&fib.pal, pbdev->iommu->pal); stq_be_p(&fib.iota, pbdev->g_iota); stq_be_p(&fib.aibv, pbdev->routes.adapter.ind_addr); diff --git a/include/hw/s390x/s390-pci-bus.h b/include/hw/s390x/s390-pci-bu= s.h index a7d1f1ade2..42f39a5cf0 100644 --- a/include/hw/s390x/s390-pci-bus.h +++ b/include/hw/s390x/s390-pci-bus.h @@ -275,7 +275,6 @@ struct S390PCIIOMMU { Object parent_obj; AddressSpace as; MemoryRegion mr; - uint64_t pba; uint64_t pal; uint64_t max_dma_limit; }; @@ -352,6 +351,7 @@ struct S390PCIBusDevice { MemoryRegion *dm_mr; GHashTable *iotlb; uint64_t g_iota; + uint64_t pba; S390PCIDMACount *dma_limit; MemoryRegion msix_notify_mr; IndAddr *summary_ind; --=20 2.34.1