From nobody Tue Mar 3 03:17:17 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=none dis=none) header.from=ariadne.space ARC-Seal: i=1; a=rsa-sha256; t=1771974776; cv=none; d=zohomail.com; s=zohoarc; b=FS/2/XaOpY/T8Hacch28CK6hRnJ6TJksMHGUC374UiubwezRC+hVtuOkIG50JKnHuzsHda3bklRPISjmNieQoDsus68CxSuWifL3NcLyOIpjI9mSDnxwxwu8Woq2xvFipQzQXLiqb3XqBb0y9IvxmFpaVQSZdreJVa2v55cfje4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771974776; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=8V2La6Men6eXkqMSn0jYq+fe6TyrquuJznUHMk/qitc=; b=TLUq82DrBJIIXq89j+2rDKzh4dTPZj7q851HnZdTdhpnnpKFWoHssHB7R7c5i39dA/Ry7ymQgJfiCfMHf5puKsnebKcusIFDaWys4G8gu5svC8a0P23QjbhL6ryFMJeegZStHMubgCXdqyaG0ZrxDmtuUZDmJNO9DSExZ2tLOh0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1771974776259541.2261160484114; Tue, 24 Feb 2026 15:12:56 -0800 (PST) Received: from list by lists.xenproject.org with outflank-mailman.1240317.1541744 (Exim 4.92) (envelope-from ) id 1vv1Zs-0000yd-4p; Tue, 24 Feb 2026 23:12:28 +0000 Received: by outflank-mailman (output) from mailman id 1240317.1541744; Tue, 24 Feb 2026 23:12:28 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vv1Zs-0000yW-0x; Tue, 24 Feb 2026 23:12:28 +0000 Received: by outflank-mailman (input) for mailman id 1240317; Tue, 24 Feb 2026 23:12:26 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1vv1Zq-0000yQ-PJ for xen-devel@lists.xenproject.org; Tue, 24 Feb 2026 23:12:26 +0000 Received: from hermes.ariadne.space (hermes.ariadne.space [149.248.47.155]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id 46bbf3be-11d6-11f1-b164-2bf370ae4941; Wed, 25 Feb 2026 00:12:24 +0100 (CET) Received: from helios (unknown [100.74.42.12]) by hermes.ariadne.space (Postfix) with ESMTP id 5A65D2685AB; Tue, 24 Feb 2026 23:12:22 +0000 (UTC) Received: from phoebe.taild41b8.ts.net (unknown [172.19.0.1]) by helios (Postfix) with ESMTPSA id 4D34216000D707; Tue, 24 Feb 2026 23:12:22 +0000 (UTC) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: 46bbf3be-11d6-11f1-b164-2bf370ae4941 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ariadne.space; s=dkim; t=1771974742; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=8V2La6Men6eXkqMSn0jYq+fe6TyrquuJznUHMk/qitc=; b=OGd4h3N5k3l0eL03XMTn4dBdfGmspN1HdTecg12lzbQzS0dXnb0K8Gb7t8dctm7sisbS8r CQ68faHuJqzY3NOTTfagaY7PQOA/97D3PX7lnpD+0ZdRYKv1CSzG9RpQAGMG/DW1R5jEGh e7r9RjItngnsYPbh13v2nw91L+yWfTI= From: Ariadne Conill To: xen-devel@lists.xenproject.org Cc: Ariadne Conill , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= , Stewart Hildebrand , Steven Noonan Subject: [PATCH] xen/vpci: zero guest-visible BAR addresses to ensure domU asssigns its own Date: Tue, 24 Feb 2026 15:12:15 -0800 Message-ID: <20260224231216.6203-1-ariadne@ariadne.space> X-Mailer: git-send-email 2.53.0 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @ariadne.space) X-ZM-MESSAGEID: 1771974778973158500 Content-Type: text/plain; charset="utf-8" From: Steven Noonan If we just use the host's BAR addresses, the domU might not attempt to reconfigure the BAR ranges and may never try to map them with the IOMMU. Zeroing them ensures the guest kernel knows the BARs are not configured and needs to make its own choices about where to map the BARs. Signed-off-by: Steven Noonan Signed-off-by: Ariadne Conill --- xen/drivers/vpci/header.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/drivers/vpci/header.c b/xen/drivers/vpci/header.c index 739a5f610e..852dfd8ae3 100644 --- a/xen/drivers/vpci/header.c +++ b/xen/drivers/vpci/header.c @@ -1011,7 +1011,7 @@ int vpci_init_header(struct pci_dev *pdev) } =20 bars[i].addr =3D addr; - bars[i].guest_addr =3D addr; + bars[i].guest_addr =3D is_hwdom ? addr : 0; bars[i].size =3D size; bars[i].prefetchable =3D val & PCI_BASE_ADDRESS_MEM_PREFETCH; =20 @@ -1034,7 +1034,7 @@ int vpci_init_header(struct pci_dev *pdev) rom->type =3D VPCI_BAR_ROM; rom->size =3D size; rom->addr =3D addr; - rom->guest_addr =3D addr; + rom->guest_addr =3D is_hwdom ? addr : 0; header->rom_enabled =3D pci_conf_read32(pdev->sbdf, rom_reg) & PCI_ROM_ADDRESS_ENABLE; =20 --=20 2.53.0