From nobody Wed Oct 22 13:03:25 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (208.118.235.17 [208.118.235.17]) by mx.zohomail.com with SMTPS id 1519461092671693.8572329519212; Sat, 24 Feb 2018 00:31:32 -0800 (PST) Received: from localhost ([::1]:49031 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1epVEp-0000P5-8l for importer@patchew.org; Sat, 24 Feb 2018 03:31:23 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37812) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1epVDu-0008Vm-UO for qemu-devel@nongnu.org; Sat, 24 Feb 2018 03:30:28 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1epVDr-0004xF-N7 for qemu-devel@nongnu.org; Sat, 24 Feb 2018 03:30:26 -0500 Received: from mout.web.de ([212.227.17.12]:52887) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1epVDr-0004sD-Dq for qemu-devel@nongnu.org; Sat, 24 Feb 2018 03:30:23 -0500 Received: from [192.168.1.10] ([95.157.57.47]) by smtp.web.de (mrweb101 [213.165.67.124]) with ESMTPSA (Nemesis) id 0MBCBN-1ez68p2OzF-00AGn0; Sat, 24 Feb 2018 09:30:14 +0100 To: Peter Xu , "Michael S. Tsirkin" References: <2837d007-760a-f2c1-c8cd-6f7d4f6f0bbd@web.de> <20180222044013.GC18962@xz-mi> From: Jan Kiszka Message-ID: <2f5781cc-ced4-6df0-906e-cd456d722a6e@web.de> Date: Sat, 24 Feb 2018 09:30:12 +0100 User-Agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 MIME-Version: 1.0 In-Reply-To: <20180222044013.GC18962@xz-mi> Content-Language: en-US Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K0:Mkd6+mHBOxFLb1vhdmRiMR3q2d074htbQz638k3abGfSVeexb9K 0G25kFR+zFEANpIB9OYois8Cb05sy7tJ5Ku1TFjBjycBA6hNZefMpMV0e9zArec45kXGdXR GZSvQ9ZFfEdkz6CeyafLhFqU2vydzFJwAFk8ZBtAcP6twUi7ibKU+0oEhau/xcm/MNEmKRs BRVt2klwM5St1zIXkjmCg== X-UI-Out-Filterresults: notjunk:1;V01:K0:iQ6QrU2sqDg=:qcjxRez+08VoS2PafVu75p h4T4CyILyZKAz32K15MAkV/q1l3iv2+bz7/y9f2yxAwCHbhuxSMoZSql+wIbsbzKi9kHO0UjY jPEI0ozFm+LPo36Rd1ogZj9i7tmgGD9se93TNJrrPZQFFEYyDWNcAP3GSkwEWXt0EihSgcAVf 2rxvwn1zVdLhPWdiWswOXWpGSMJkTckU7kIuwuD9VeFQgt9cPaMtJ8bSHTt0LG7cOSIx6TZsO B+4cidtgEumUbk01jucaVRl14PIZl0cbLUfBem3LAc2YXnBdN1GXaHxWr1Q86dQtW0tO19snH nH00n8mRtLlAHOUUnoiHUezIOhBGg5rwy/Rll6q7lwkcKtuHeTsIcauP60PyefUgZmjrx8Xt2 EV8HTnp1EuLNOpc02MGZ0fNy5sMkOcGasyxJBj8gJm0oxaSYghAm5wNk1z3bSdr7bYljJnODa TJGbAo2NctlwoChBN2Zd3mjCr9adRtUlapY61FaiIpUX3r1yTkhPNHAkEysdpXuILTXkMzVgH h2e4EBSm3cCG6bYntH+Z7usIKAtR8PDHqeLXu4Bc/7EKz41cb6ZfE0Hs4oK6CEuOrk2QWDPKG jmppkthXpd0xA6hgxoRhtXh10mkYiUlCL7iW/nVXg819vznoIT5zTLRsmOgjTtY9YFkH+u2oF 027F+dOUmHH0ZZchGkniU5YzfJtVYAxFL1XXS7w6VTFROBebVFFj1KZU8vY00wqtD1ou9vGwL QVTNUw2Iu9tfqM7+JrOv/LtWEmWEqEFVTK7rZb352UlTE5GhIQoqwQkwvT/Yev1fkbZJig6BO PhBb5vC+ht73DJjEjVaHMaw3O6k7JssqAvdtS1YPf8Z1+BYUqE= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 212.227.17.12 Subject: [Qemu-devel] [PATCH v2] intel-iommu: Accept 64-bit writes to FEADDR X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Lloret, Luis" , qemu-devel Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" From: Jan Kiszka Xen is doing this [1] and currently triggers an abort. [1] http://xenbits.xenproject.org/gitweb/?p=3Dxen.git;a=3Dblob;f=3Dxen/driv= ers/passthrough/vtd/iommu.c;h=3Ddaaed0abbdd06b6ba3d948ea103aadf02651e83c;hb= =3Drefs/heads/master#l1108 Reported-by: Luis Lloret Signed-off-by: Jan Kiszka Reviewed-by: Peter Xu --- hw/i386/intel_iommu.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index 2e841cde27..fb31de9416 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -2129,8 +2129,15 @@ static void vtd_mem_write(void *opaque, hwaddr addr, =20 /* Fault Event Address Register, 32-bit */ case DMAR_FEADDR_REG: - assert(size =3D=3D 4); - vtd_set_long(s, addr, val); + if (size =3D=3D 4) { + vtd_set_long(s, addr, val); + } else { + /* + * While the register is 32-bit only, some guests (Xen...) wri= te to + * it with 64-bit. + */ + vtd_set_quad(s, addr, val); + } break; =20 /* Fault Event Upper Address Register, 32-bit */