Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp3527228pxb; Mon, 24 Jan 2022 11:26:38 -0800 (PST) X-Google-Smtp-Source: ABdhPJzNU8wdn1PpggBIj+w74rtnu/J7DlqZ8zQfznYgmd/Ulyo3eQlLiSDu5uaCbcFu7eBVVDK8 X-Received: by 2002:a17:902:6b8b:b0:149:7cf7:c58e with SMTP id p11-20020a1709026b8b00b001497cf7c58emr15438666plk.135.1643052398238; Mon, 24 Jan 2022 11:26:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643052398; cv=none; d=google.com; s=arc-20160816; b=nC2CnObwk8/1Sh63fLWBzsWhrlQPZpB50IJAUiVO40U4UnLeMZCNvE21GELI0HoRxR LRfiLFkPdkDAbjsh/6arY3P6BJPJLvdS5EESSBJvqPOBaVfgqBiL2VbRK4vo118ZuRew WQhCrht/vVFnkmZRXSmPNwGuI9ZQSP7+ZxKnjsUJ2ZCrnrSxv+h0saQmNsxSmVCYkx9B R+sPlZxllb+9wB/5ocWx5qY5jF3AHLE8Ncctyt0gf6yBeflHUJPZiqm3RvNSB/UhD+Kv nxZXMx8ma0JiIiEkCTJbUHOhO4C0P3rkmW1s8OlxhAhkiYcwuQCVe4arvWpfAnMLqR6q gpjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=4LoQg0G0TFguQzwU7P6PeQrC6hvjOlqD0iN1OjN3qyQ=; b=etEYEwAYbu/FEAZlqJuZHSjO5A+h+mXQ5bBO2mJrKJIJ60CZdz5wAqCUKLDxqclGU1 NgzGJBxOBpxKV+woZ40CUBZ8w+WICBLEGE6EUGrrC65SqwDXByg7iV2qgKWQcFJTDYsM YCnoOT6b7Ap4VCmcRAkqrtbJloezbC1VQ4K9/42xZjix2UfJHJF7RD4ngdN6Vs7ZIkdk caXuGZnxwqX4rgNMf2XFeVeyGBtSXUSud/i+IsIut+I0PA5kRz1F4LSpzr0UtMHV6LCE zBQB/+7uUpac6MIRJi2ZTn8atUwO0pWy7uPjpXmiEG+qaMBILawWDgXk+PeB4R5IP4zD wIFQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=i81tDKDN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g5si14484908pgj.552.2022.01.24.11.26.22; Mon, 24 Jan 2022 11:26:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=i81tDKDN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243220AbiAXPDq (ORCPT + 99 others); Mon, 24 Jan 2022 10:03:46 -0500 Received: from mga09.intel.com ([134.134.136.24]:24561 "EHLO mga09.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240334AbiAXPCg (ORCPT ); Mon, 24 Jan 2022 10:02:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1643036556; x=1674572556; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=uav+UwLJTiQzJso3hjEQdqtULUSM2290C08sG/C0E5c=; b=i81tDKDNHkhJumD/BI+dj3j2K1JNMwNh1+/OywP64pNwBqIUpenAnh8U Iv5o9UFbp49L74E0M9nOFWiMatBJxgi1zFNiwsEdcgpwC9fY1RGsi40Hu trtPGvgeMQCpahuGY2Ctj4vq+SJ3kSCDAVWbX5Ah6pX9YvbAvniKbel9d 8MDPdH+3GMhYNMwJ6CtW2ZCm7lDpAeibJfghOOvxSS4D6BaXdUdJlmVTX z/FCRXFMy89+zKad8Z4HssET1PWoj56sTWavEZ4J1joSRLebJw/9RRtly 5unXHko86V83OKhFHRuvaOuXCB2krrRVhTbWB6wBIwUL/6IAs9kibVC4P Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10236"; a="245843930" X-IronPort-AV: E=Sophos;i="5.88,311,1635231600"; d="scan'208";a="245843930" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jan 2022 07:02:29 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,311,1635231600"; d="scan'208";a="627523593" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga004.jf.intel.com with ESMTP; 24 Jan 2022 07:02:23 -0800 Received: by black.fi.intel.com (Postfix, from userid 1000) id AAC23DD9; Mon, 24 Jan 2022 17:02:20 +0200 (EET) From: "Kirill A. Shutemov" To: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@intel.com, luto@kernel.org, peterz@infradead.org Cc: sathyanarayanan.kuppuswamy@linux.intel.com, aarcange@redhat.com, ak@linux.intel.com, dan.j.williams@intel.com, david@redhat.com, hpa@zytor.com, jgross@suse.com, jmattson@google.com, joro@8bytes.org, jpoimboe@redhat.com, knsathya@kernel.org, pbonzini@redhat.com, sdeep@vmware.com, seanjc@google.com, tony.luck@intel.com, vkuznets@redhat.com, wanpengli@tencent.com, x86@kernel.org, linux-kernel@vger.kernel.org, "Kirill A. Shutemov" Subject: [PATCHv2 28/29] x86/tdx: Warn about unexpected WBINVD Date: Mon, 24 Jan 2022 18:02:14 +0300 Message-Id: <20220124150215.36893-29-kirill.shutemov@linux.intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220124150215.36893-1-kirill.shutemov@linux.intel.com> References: <20220124150215.36893-1-kirill.shutemov@linux.intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org WBINVD causes #VE in TDX guests. There's no reliable way to emulate it. The kernel can ask for VMM assistance, but VMM is untrusted and can ignore the request. Fortunately, there is no use case for WBINVD inside TDX guests. Warn about any unexpected WBINVD. Signed-off-by: Kirill A. Shutemov --- arch/x86/kernel/tdx.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/arch/x86/kernel/tdx.c b/arch/x86/kernel/tdx.c index 6048887ac846..22c785c2059c 100644 --- a/arch/x86/kernel/tdx.c +++ b/arch/x86/kernel/tdx.c @@ -530,6 +530,10 @@ static bool tdx_virt_exception_kernel(struct pt_regs *regs, struct ve_info *ve) case EXIT_REASON_IO_INSTRUCTION: ret = tdx_handle_io(regs, ve->exit_qual); break; + case EXIT_REASON_WBINVD: + WARN_ONCE(1, "Unexpected WBINVD\n"); + ret = true; + break; default: pr_warn("Unexpected #VE: %lld\n", ve->exit_reason); break; -- 2.34.1