From nobody Tue Feb 10 03:36:50 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=1652326797; cv=none; d=zohomail.com; s=zohoarc; b=T7OCiAAE27T0+NxI9+9M7AG5Ia4bNYe1t0qc+1qboURvavME2I+k3/88BtlljLLFZBNfvuPR0xpvJkyY+Cmzz4vDuMkVmGX21V2h1Rb8zUE6beLKf3ij3pGXeWXnaKX0jGIN7j+Src8JbFDOOcCDQ47mXL3LL8UqiwNmk1AcENk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1652326797; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=SzKb1B9aUjt9LMgRUtwd+N/2Em55FQPoZcijKWz6B/4=; b=LdQMjOGntWBQ4qeL3t2VBlTuWiNsilQHJI6DHZfB5Zsobi3VnIhbv2zD5B9ylOM49Yd8p+Su6qJA98yj+Z4gJkKhYwtOqtDtMuguwZuFr64LFaEeWCSsBoIP/Ry55WfCTafdyp6jrdsrFyKI1OIuqHWttZPwJVpjI1GkX9lrNrM= 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 1652326797326979.2561487535285; Wed, 11 May 2022 20:39:57 -0700 (PDT) Received: from localhost ([::1]:39778 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nozgC-0004V3-7h for importer@patchew.org; Wed, 11 May 2022 23:39:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39658) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nozNb-0005U9-RX for qemu-devel@nongnu.org; Wed, 11 May 2022 23:20:44 -0400 Received: from mga11.intel.com ([192.55.52.93]:31268) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nozNa-0003Hj-9Z for qemu-devel@nongnu.org; Wed, 11 May 2022 23:20:43 -0400 Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 May 2022 20:20:21 -0700 Received: from lxy-dell.sh.intel.com ([10.239.159.55]) by orsmga008.jf.intel.com with ESMTP; 11 May 2022 20:20:17 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1652325642; x=1683861642; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=zA4+vO3ZlL6FDdVOOW5n4kWKuIMD1g8bw35TxLB01wM=; b=kZ0tMDoxXzf/lEcWH2d1X/bPpsswOVq7ExRWabw1sEXCLc057t8Jvm4j D0RaR71fDjpfaa3N5Hah72QmXoonuBAYjxTDE3/mBjK6HFpT20tyiG3D2 jSnPfrUDUAzwS0AbGT/LOsnAzSfIHS/9esejzO59qV/sTTHOwGQ4efkcX XLTTtNVAmJ1K8Q/JPGVfqxhyh9xG3qR5BDllIz5K8Tqc4CZd8mIuO15LH TwladftCvjHgSfk6DW3DlJXwhuvT01gCiskYh3+0SFOyWwnyY0bYJYK8r rSDXxLwJj/7YwEyc16piiOlo3qqPjlLg7ChHt1jzdLS7cUBYaSolVH9vf Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10344"; a="267461332" X-IronPort-AV: E=Sophos;i="5.91,218,1647327600"; d="scan'208";a="267461332" X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.91,218,1647327600"; d="scan'208";a="594456595" From: Xiaoyao Li To: Paolo Bonzini , Isaku Yamahata , isaku.yamahata@intel.com, Gerd Hoffmann , =?UTF-8?q?Daniel=20P=20=2E=20Berrang=C3=A9?= , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Richard Henderson , "Michael S . Tsirkin" , Marcel Apfelbaum , Cornelia Huck , Marcelo Tosatti , Laszlo Ersek , Eric Blake Cc: Connor Kuehl , erdemaktas@google.com, kvm@vger.kernel.org, qemu-devel@nongnu.org, seanjc@google.com, xiaoyao.li@intel.com Subject: [RFC PATCH v4 27/36] i386/tdx: Disable SMM for TDX VMs Date: Thu, 12 May 2022 11:17:54 +0800 Message-Id: <20220512031803.3315890-28-xiaoyao.li@intel.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220512031803.3315890-1-xiaoyao.li@intel.com> References: <20220512031803.3315890-1-xiaoyao.li@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=192.55.52.93; envelope-from=xiaoyao.li@intel.com; helo=mga11.intel.com X-Spam_score_int: -51 X-Spam_score: -5.2 X-Spam_bar: ----- X-Spam_report: (-5.2 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.082, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HK_RANDOM_ENVFROM=0.998, HK_RANDOM_FROM=0.998, RCVD_IN_DNSWL_HI=-5, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @intel.com) X-ZM-MESSAGEID: 1652326798718100001 Content-Type: text/plain; charset="utf-8" TDX doesn't support SMM and VMM cannot emulate SMM for TDX VMs because VMM cannot manipulate TDX VM's memory. Disable SMM for TDX VMs and error out if user requests to enable SMM. Signed-off-by: Xiaoyao Li Acked-by: Gerd Hoffmann --- target/i386/kvm/tdx.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/target/i386/kvm/tdx.c b/target/i386/kvm/tdx.c index 4a7c149f895c..7ff4c6a9a7ca 100644 --- a/target/i386/kvm/tdx.c +++ b/target/i386/kvm/tdx.c @@ -322,9 +322,17 @@ static Notifier tdx_machine_done_notify =3D { =20 int tdx_kvm_init(MachineState *ms, Error **errp) { + X86MachineState *x86ms =3D X86_MACHINE(ms); TdxGuest *tdx =3D (TdxGuest *)object_dynamic_cast(OBJECT(ms->cgs), TYPE_TDX_GUEST); =20 + if (x86ms->smm =3D=3D ON_OFF_AUTO_AUTO) { + x86ms->smm =3D ON_OFF_AUTO_OFF; + } else if (x86ms->smm =3D=3D ON_OFF_AUTO_ON) { + error_setg(errp, "TDX VM doesn't support SMM"); + return -EINVAL; + } + if (!tdx_caps) { get_tdx_capabilities(); } --=20 2.27.0