From nobody Sat Apr 11 20:10:24 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass header.i=@intel.com; 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=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1773221074; cv=none; d=zohomail.com; s=zohoarc; b=jkZVzUlZPM30ZbBI+P7mrU2Pl5yFGaRaXrMowUHXUjMFeYvC7Ke77pqyElFL3D70QnjF0zqhucjf1FW4tWFcp+Gf5ZluSKWjUbfBRJIYm/h92z9ttXrjDD3UhQXcMk+vftFNM/fY9qmjPNiLRHzyUflsfp0oraR1owOgaKMQvyQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773221074; 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=wyUuldtCSppVf+UYtzUmYotaWaYAlMN5UtH6GjD5y1g=; b=JtUqpMS32IXFTocKQjWZ1pv+5SSY7qYHudLVfhpfgvKJnExvdLqdBdeWYouUt39qTL/otPsgq4Lb/VqNJ/ksncQvrfWGJvrwujsghWM7v58kj6t4zCz52F0+I7afiCb8GobRg1tq89eTCnov5XMkBnoXtgN/DRyesJTDhMTdg5I= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=@intel.com; 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1773221074050488.9986744805915; Wed, 11 Mar 2026 02:24:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w0FnD-0003la-P4; Wed, 11 Mar 2026 05:23:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w0Fn6-0003kR-A7 for qemu-devel@nongnu.org; Wed, 11 Mar 2026 05:23:44 -0400 Received: from mgamail.intel.com ([198.175.65.9]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w0Fn0-0001RN-FJ for qemu-devel@nongnu.org; Wed, 11 Mar 2026 05:23:43 -0400 Received: from orviesa009.jf.intel.com ([10.64.159.149]) by orvoesa101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Mar 2026 02:23:34 -0700 Received: from unknown (HELO gnr-sp-2s-612.sh.intel.com) ([10.112.230.229]) by orviesa009-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Mar 2026 02:23:32 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1773221019; x=1804757019; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=uaxmlChxV/it0J+ZU+f5fkXIkYdMgQdgPCGWK+QHjiE=; b=Y++JAswWcJLmSHKZxBLzSskMSvJsV5enq1GeXHk9nMoPUlzHyy5lVLYt s+k+oGEUnmxF6B37CDAu4yE7Ah3hhXn/4fXWh1Zv3/twbrp0uaMCWl1di /uOpf5XlS0PD4MmgEA6Wy7UO3GBUbvtQjHw4zEuh8q3P6DCZi+ndf4o0k Tt9MNy3vmfeEioybSJ0NHH2DG5ZsrHAPs3q2MjhBOTZ2Gxewc/++YvjCB Fk5TxWjPrqd+ILmV0hYfHzhc6bEdyXCLZKcwYGrzJvAQjNnZbiyWMxCIV 2/VrPAWpIvHDKPK8cq08mlrbhLjdNTPEbn8JRo24FIL0QAPJDGs9T8wnA Q==; X-CSE-ConnectionGUID: o4JXTRTgSDu1+8eFO79NPw== X-CSE-MsgGUID: ElLc01rBRZ+a1u4fsb0Xog== X-IronPort-AV: E=McAfee;i="6800,10657,11725"; a="96899431" X-IronPort-AV: E=Sophos;i="6.23,113,1770624000"; d="scan'208";a="96899431" X-CSE-ConnectionGUID: VMvTyml8SJGTgC6cMsPFrg== X-CSE-MsgGUID: IBt+wtMuQzeC4AZBxJugEg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.23,113,1770624000"; d="scan'208";a="220354003" From: Zhenzhong Duan To: qemu-devel@nongnu.org Cc: mst@redhat.com, jasowang@redhat.com, berrange@redhat.com, clg@redhat.com, nathanc@nvidia.com, clement.mathieu--drif@bull.com, philmd@linaro.org, yi.l.liu@intel.com, Zhenzhong Duan , Paolo Bonzini Subject: [PATCH v2 1/2] intel_iommu: Remove 'x-' prefix from 'x-scalable-mode' and 'x-flts' properties Date: Wed, 11 Mar 2026 05:23:19 -0400 Message-ID: <20260311092320.212849-2-zhenzhong.duan@intel.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260311092320.212849-1-zhenzhong.duan@intel.com> References: <20260311092320.212849-1-zhenzhong.duan@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=198.175.65.9; envelope-from=zhenzhong.duan@intel.com; helo=mgamail.intel.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, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.819, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.903, 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 @intel.com) X-ZM-MESSAGEID: 1773221076115158500 Content-Type: text/plain; charset="utf-8" We had 'x-scalable-mode' for more than 5 years and 'x-flts' for more than 1 year, it's fine to remove 'x-' now. This is a prerequisite to enable intel_iommu's scalable mode and first stage translation support in libvirt. Signed-off-by: Zhenzhong Duan --- docs/devel/vfio-iommufd.rst | 10 +++++----- hw/i386/intel_iommu.c | 8 ++++---- hw/i386/intel_iommu_accel.c | 4 ++-- tests/qtest/intel-iommu-test.c | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/devel/vfio-iommufd.rst b/docs/devel/vfio-iommufd.rst index 78bcdffac7..5755532443 100644 --- a/docs/devel/vfio-iommufd.rst +++ b/docs/devel/vfio-iommufd.rst @@ -153,22 +153,22 @@ RAM discarding for mdev. ``vfio-ap`` and ``vfio-ccw`` devices don't have same issue as their backend devices are always mdev and RAM discarding is force enabled. =20 -Usage with intel_iommu featuring x-flts=3Don +Usage with intel_iommu featuring flts=3Don ------------------------------------------ =20 Only IOMMUFD backed VFIO device is supported when intel_iommu is configured -with x-flts=3Don, for legacy container backed VFIO device, below error sho= ws: +with flts=3Don, for legacy container backed VFIO device, below error shows: =20 .. code-block:: none =20 - qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0: vfio 0000:02= :00.0: Failed to set vIOMMU: Need IOMMUFD backend when x-flts=3Don + qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0: vfio 0000:02= :00.0: Failed to set vIOMMU: Need IOMMUFD backend when flts=3Don =20 VFIO device under PCI bridge is unsupported, use PCIE bridge if necessary, otherwise below error shows: =20 .. code-block:: none =20 - qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0,bus=3Dbridge1= ,iommufd=3Diommufd0: vfio 0000:02:00.0: Failed to set vIOMMU: Host device d= ownstream to a PCI bridge is unsupported when x-flts=3Don + qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0,bus=3Dbridge1= ,iommufd=3Diommufd0: vfio 0000:02:00.0: Failed to set vIOMMU: Host device d= ownstream to a PCI bridge is unsupported when flts=3Don =20 If host IOMMU has ERRATA_772415_SPR17, running guest with "intel_iommu=3Do= n,sm_off" is unsupported, kexec or reboot guest from "intel_iommu=3Don,sm_on" to @@ -177,4 +177,4 @@ below if it's not needed by guest: =20 .. code-block:: bash =20 - -device intel-iommu,x-scalable-mode=3Doff + -device intel-iommu,scalable-mode=3Doff diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index f395fa248c..fb6bbc3447 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -4200,8 +4200,8 @@ static const Property vtd_properties[] =3D { DEFINE_PROP_UINT8("aw-bits", IntelIOMMUState, aw_bits, VTD_HOST_ADDRESS_WIDTH), DEFINE_PROP_BOOL("caching-mode", IntelIOMMUState, caching_mode, FALSE), - DEFINE_PROP_BOOL("x-scalable-mode", IntelIOMMUState, scalable_mode, FA= LSE), - DEFINE_PROP_BOOL("x-flts", IntelIOMMUState, fsts, FALSE), + DEFINE_PROP_BOOL("scalable-mode", IntelIOMMUState, scalable_mode, FALS= E), + DEFINE_PROP_BOOL("flts", IntelIOMMUState, fsts, FALSE), DEFINE_PROP_BOOL("snoop-control", IntelIOMMUState, snoop_control, fals= e), DEFINE_PROP_BOOL("x-pasid-mode", IntelIOMMUState, pasid, false), DEFINE_PROP_BOOL("svm", IntelIOMMUState, svm, false), @@ -5560,7 +5560,7 @@ static bool vtd_decide_config(IntelIOMMUState *s, Err= or **errp) } =20 if (!s->scalable_mode && s->fsts) { - error_setg(errp, "x-flts is only available in scalable mode"); + error_setg(errp, "flts is only available in scalable mode"); return false; } =20 @@ -5573,7 +5573,7 @@ static bool vtd_decide_config(IntelIOMMUState *s, Err= or **errp) } =20 if (s->fsts && s->aw_bits !=3D VTD_HOST_AW_48BIT) { - error_setg(errp, "Scalable mode(x-flts=3Don): supported value for " + error_setg(errp, "Scalable mode(flts=3Don): supported value for " "aw-bits is: %d", VTD_HOST_AW_48BIT); return false; } diff --git a/hw/i386/intel_iommu_accel.c b/hw/i386/intel_iommu_accel.c index 67d54849f2..b28d5eb9fa 100644 --- a/hw/i386/intel_iommu_accel.c +++ b/hw/i386/intel_iommu_accel.c @@ -26,7 +26,7 @@ bool vtd_check_hiod_accel(IntelIOMMUState *s, VTDHostIOMM= UDevice *vtd_hiod, PCIDevice *pdev =3D bus->devices[vtd_hiod->devfn]; =20 if (!object_dynamic_cast(OBJECT(hiod), TYPE_HOST_IOMMU_DEVICE_IOMMUFD)= ) { - error_setg(errp, "Need IOMMUFD backend when x-flts=3Don"); + error_setg(errp, "Need IOMMUFD backend when flts=3Don"); return false; } =20 @@ -44,7 +44,7 @@ bool vtd_check_hiod_accel(IntelIOMMUState *s, VTDHostIOMM= UDevice *vtd_hiod, =20 if (pci_device_get_iommu_bus_devfn(pdev, &bus, NULL, NULL)) { error_setg(errp, "Host device downstream to a PCI bridge is " - "unsupported when x-flts=3Don"); + "unsupported when flts=3Don"); return false; } =20 diff --git a/tests/qtest/intel-iommu-test.c b/tests/qtest/intel-iommu-test.c index e5cc6acaf0..4f12c56260 100644 --- a/tests/qtest/intel-iommu-test.c +++ b/tests/qtest/intel-iommu-test.c @@ -29,7 +29,7 @@ static void test_intel_iommu_stage_1(void) uint64_t cap, ecap, tmp; QTestState *s; =20 - s =3D qtest_init("-M q35 -device intel-iommu,x-scalable-mode=3Don,x-fl= ts=3Don"); + s =3D qtest_init("-M q35 -device intel-iommu,scalable-mode=3Don,flts= =3Don"); =20 cap =3D vtd_reg_readq(s, DMAR_CAP_REG); g_assert((cap & CAP_STAGE_1_FIXED1) =3D=3D CAP_STAGE_1_FIXED1); --=20 2.47.3 From nobody Sat Apr 11 20:10:24 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass header.i=@intel.com; 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=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1773221074; cv=none; d=zohomail.com; s=zohoarc; b=fqjGEhgtPusmqsQI9tPhcjsxrUPTQYcnZHmtTwHco7jIddRMym8sxGRxtcfntLgZdNJwp0cq7qF8iYijiDjvPQeOZgp5CWvAPNicb+blX1LJMMjsYeSfVBVuQuk9L5R61OA2dFjlEnE7BzQCukKTBaP1cI+olwRVva2A3HjWtio= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1773221074; 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=9IpeGJ8l3Ql/JGFHQSpM9sjc+B6d6yCY3sIGwFmW+iU=; b=DOVfwdNBi7IbwY6lUumA83CikGDkEw99Vr2y4xtuwTS5S6gPB9GlbIdFdZztU/E0mx3g8nMfSLIfAvaWiF8+vvJJAjmfwHCNu4TahUuJSDg6KsAv8LduIlRCUj9NiuZ8vW6mD1Uu28RFxJT7Uys3SB6fAehDiU6V+Y1CqXIhmYk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=@intel.com; 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=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1773221074874273.3005474575273; Wed, 11 Mar 2026 02:24:34 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1w0FnC-0003lH-5H; Wed, 11 Mar 2026 05:23:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w0Fn6-0003kS-Cf for qemu-devel@nongnu.org; Wed, 11 Mar 2026 05:23:44 -0400 Received: from mgamail.intel.com ([198.175.65.9]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1w0Fn2-0001RX-I8 for qemu-devel@nongnu.org; Wed, 11 Mar 2026 05:23:44 -0400 Received: from orviesa009.jf.intel.com ([10.64.159.149]) by orvoesa101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Mar 2026 02:23:37 -0700 Received: from unknown (HELO gnr-sp-2s-612.sh.intel.com) ([10.112.230.229]) by orviesa009-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Mar 2026 02:23:35 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1773221021; x=1804757021; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=2BLZ+gdzQTiGO2LY5QP/f3NwaXocnxsMJX5+w8Re70Q=; b=m+Hwql9WRY5AvuJE+C/hSKuFA24rfrlF7eA3Zj8USdLDKr/KLyh8m+3g 4Fti4wtykxos61TcbUDcay6WUr7Wo7WUH8eW9Z+8hWCYOpTy8M5IFo6AW wZomxTqbslhm6+1YOHX/AN5Iu6S8ctsBjXVg+QzKbahuy+iQUoanbzCiR lEZHzfW2zi52rvYX7bnkBuwFIDfD6SiArm1LF5I8wqdRZ33tYVLt91oG1 IFTkQWuIhjOKsF5jmU9AkbgOuVJuBntGY7WJKibYKMw5FjejRWGpQ3h3W rxUhK7Or/lFBP0FPgMzr89h13qObx5F30uhNvqwIkDtwg8oAwbeFwgluK A==; X-CSE-ConnectionGUID: wMIXCzDTTRmfoWRHf4E3dQ== X-CSE-MsgGUID: CD4Ydvf+Q5e/c5U3c9ffTQ== X-IronPort-AV: E=McAfee;i="6800,10657,11725"; a="96899445" X-IronPort-AV: E=Sophos;i="6.23,113,1770624000"; d="scan'208";a="96899445" X-CSE-ConnectionGUID: 0Vuzzgm3SYKm12zJitC55Q== X-CSE-MsgGUID: qpa5EK/yS4O8BO8mulIIDQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.23,113,1770624000"; d="scan'208";a="220354015" From: Zhenzhong Duan To: qemu-devel@nongnu.org Cc: mst@redhat.com, jasowang@redhat.com, berrange@redhat.com, clg@redhat.com, nathanc@nvidia.com, clement.mathieu--drif@bull.com, philmd@linaro.org, yi.l.liu@intel.com, Zhenzhong Duan , Paolo Bonzini Subject: [PATCH v2 2/2] intel_iommu: Change 'flts' property naming to 'fsts' Date: Wed, 11 Mar 2026 05:23:20 -0400 Message-ID: <20260311092320.212849-3-zhenzhong.duan@intel.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260311092320.212849-1-zhenzhong.duan@intel.com> References: <20260311092320.212849-1-zhenzhong.duan@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable 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=198.175.65.9; envelope-from=zhenzhong.duan@intel.com; helo=mgamail.intel.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, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.819, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.903, 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 @intel.com) X-ZM-MESSAGEID: 1773221078094154100 Content-Type: text/plain; charset="utf-8" Previous patch Removed 'x-' prefix from 'x-flts' property. Opportunistically, this patch does s/flts/fsts for property name in order to better align with newer spec since revision 3.4 which changed terminology from "First-level" to "First-stage". Signed-off-by: Zhenzhong Duan --- docs/devel/vfio-iommufd.rst | 8 ++++---- hw/i386/intel_iommu.c | 10 +++++----- hw/i386/intel_iommu_accel.c | 6 +++--- tests/qtest/intel-iommu-test.c | 2 +- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/devel/vfio-iommufd.rst b/docs/devel/vfio-iommufd.rst index 5755532443..d5538461ba 100644 --- a/docs/devel/vfio-iommufd.rst +++ b/docs/devel/vfio-iommufd.rst @@ -153,22 +153,22 @@ RAM discarding for mdev. ``vfio-ap`` and ``vfio-ccw`` devices don't have same issue as their backend devices are always mdev and RAM discarding is force enabled. =20 -Usage with intel_iommu featuring flts=3Don +Usage with intel_iommu featuring fsts=3Don ------------------------------------------ =20 Only IOMMUFD backed VFIO device is supported when intel_iommu is configured -with flts=3Don, for legacy container backed VFIO device, below error shows: +with fsts=3Don, for legacy container backed VFIO device, below error shows: =20 .. code-block:: none =20 - qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0: vfio 0000:02= :00.0: Failed to set vIOMMU: Need IOMMUFD backend when flts=3Don + qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0: vfio 0000:02= :00.0: Failed to set vIOMMU: Need IOMMUFD backend when fsts=3Don =20 VFIO device under PCI bridge is unsupported, use PCIE bridge if necessary, otherwise below error shows: =20 .. code-block:: none =20 - qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0,bus=3Dbridge1= ,iommufd=3Diommufd0: vfio 0000:02:00.0: Failed to set vIOMMU: Host device d= ownstream to a PCI bridge is unsupported when flts=3Don + qemu-system-x86_64: -device vfio-pci,host=3D0000:02:00.0,bus=3Dbridge1= ,iommufd=3Diommufd0: vfio 0000:02:00.0: Failed to set vIOMMU: Host device d= ownstream to a PCI bridge is unsupported when fsts=3Don =20 If host IOMMU has ERRATA_772415_SPR17, running guest with "intel_iommu=3Do= n,sm_off" is unsupported, kexec or reboot guest from "intel_iommu=3Don,sm_on" to diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index fb6bbc3447..282c05ed19 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -4201,7 +4201,7 @@ static const Property vtd_properties[] =3D { VTD_HOST_ADDRESS_WIDTH), DEFINE_PROP_BOOL("caching-mode", IntelIOMMUState, caching_mode, FALSE), DEFINE_PROP_BOOL("scalable-mode", IntelIOMMUState, scalable_mode, FALS= E), - DEFINE_PROP_BOOL("flts", IntelIOMMUState, fsts, FALSE), + DEFINE_PROP_BOOL("fsts", IntelIOMMUState, fsts, FALSE), DEFINE_PROP_BOOL("snoop-control", IntelIOMMUState, snoop_control, fals= e), DEFINE_PROP_BOOL("x-pasid-mode", IntelIOMMUState, pasid, false), DEFINE_PROP_BOOL("svm", IntelIOMMUState, svm, false), @@ -5560,20 +5560,20 @@ static bool vtd_decide_config(IntelIOMMUState *s, E= rror **errp) } =20 if (!s->scalable_mode && s->fsts) { - error_setg(errp, "flts is only available in scalable mode"); + error_setg(errp, "fsts is only available in scalable mode"); return false; } =20 if (!s->fsts && s->aw_bits !=3D VTD_HOST_AW_39BIT && s->aw_bits !=3D VTD_HOST_AW_48BIT) { error_setg(errp, "%s: supported values for aw-bits are: %d, %d", - s->scalable_mode ? "Scalable mode(flts=3Doff)" : "Legac= y mode", + s->scalable_mode ? "Scalable mode(fsts=3Doff)" : "Legac= y mode", VTD_HOST_AW_39BIT, VTD_HOST_AW_48BIT); return false; } =20 if (s->fsts && s->aw_bits !=3D VTD_HOST_AW_48BIT) { - error_setg(errp, "Scalable mode(flts=3Don): supported value for " + error_setg(errp, "Scalable mode(fsts=3Don): supported value for " "aw-bits is: %d", VTD_HOST_AW_48BIT); return false; } @@ -5590,7 +5590,7 @@ static bool vtd_decide_config(IntelIOMMUState *s, Err= or **errp) } =20 if (!s->fsts) { - error_setg(errp, "Need to set flts for svm"); + error_setg(errp, "Need to set fsts for svm"); return false; } =20 diff --git a/hw/i386/intel_iommu_accel.c b/hw/i386/intel_iommu_accel.c index b28d5eb9fa..43d2993fb3 100644 --- a/hw/i386/intel_iommu_accel.c +++ b/hw/i386/intel_iommu_accel.c @@ -26,7 +26,7 @@ bool vtd_check_hiod_accel(IntelIOMMUState *s, VTDHostIOMM= UDevice *vtd_hiod, PCIDevice *pdev =3D bus->devices[vtd_hiod->devfn]; =20 if (!object_dynamic_cast(OBJECT(hiod), TYPE_HOST_IOMMU_DEVICE_IOMMUFD)= ) { - error_setg(errp, "Need IOMMUFD backend when flts=3Don"); + error_setg(errp, "Need IOMMUFD backend when fsts=3Don"); return false; } =20 @@ -44,7 +44,7 @@ bool vtd_check_hiod_accel(IntelIOMMUState *s, VTDHostIOMM= UDevice *vtd_hiod, =20 if (pci_device_get_iommu_bus_devfn(pdev, &bus, NULL, NULL)) { error_setg(errp, "Host device downstream to a PCI bridge is " - "unsupported when flts=3Don"); + "unsupported when fsts=3Don"); return false; } =20 @@ -105,7 +105,7 @@ static bool vtd_device_attach_iommufd(VTDHostIOMMUDevic= e *vtd_hiod, bool ret; =20 /* - * We can get here only if flts=3Don, the supported PGTT is FST or PT. + * We can get here only if fsts=3Don, the supported PGTT is FST or PT. * Catch invalid PGTT when processing invalidation request to avoid * attaching to wrong hwpt. */ diff --git a/tests/qtest/intel-iommu-test.c b/tests/qtest/intel-iommu-test.c index 4f12c56260..30ee6524df 100644 --- a/tests/qtest/intel-iommu-test.c +++ b/tests/qtest/intel-iommu-test.c @@ -29,7 +29,7 @@ static void test_intel_iommu_stage_1(void) uint64_t cap, ecap, tmp; QTestState *s; =20 - s =3D qtest_init("-M q35 -device intel-iommu,scalable-mode=3Don,flts= =3Don"); + s =3D qtest_init("-M q35 -device intel-iommu,scalable-mode=3Don,fsts= =3Don"); =20 cap =3D vtd_reg_readq(s, DMAR_CAP_REG); g_assert((cap & CAP_STAGE_1_FIXED1) =3D=3D CAP_STAGE_1_FIXED1); --=20 2.47.3