From nobody Fri Oct 3 23:04:03 2025 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CDF9F1C695; Fri, 22 Aug 2025 15:01:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=193.142.43.55 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755874863; cv=none; b=S8g5e0xcaUXYQ3xyjHTCWG1Yjx/r96z04iGYfZaA5kqZiJIetxQ5IiLQ7qDg+Fu6p9GXKUu74djB1kqCE34IIiQd8kkPLyykDKbtH5Y5O1pvdXHT5ctjs3bBvZdJs3+R0tYfYFaU4Wd6Jr5s7qCgsa+QmmselCwk5/ANUDxgnPQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1755874863; c=relaxed/simple; bh=kuSPdyuMaE7cdkr+9bsO28UlrnwA6EopUdnh9zyR7BI=; h=Date:From:To:Subject:Cc:MIME-Version:Message-ID:Content-Type; b=h1JkFDdrjXmFXbFTiAUMudgvRYSspUr2hfmK/YDp8VbNcR0leXbBp+PDlpSrPYQWlKAZ3Kn/AliMIG6aYOU7gD4z2DJ1tmqd+JgGX/wu7Qh3y+kTWdbfGrfyi3Nh74xXwMRXvRQRqL9T3rHKmjeMxOufww1EvlHvrZvVBH4suEE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linutronix.de; spf=pass smtp.mailfrom=linutronix.de; dkim=pass (2048-bit key) header.d=linutronix.de header.i=@linutronix.de header.b=kARlcCj1; dkim=permerror (0-bit key) header.d=linutronix.de header.i=@linutronix.de header.b=Qi3Z+MBd; arc=none smtp.client-ip=193.142.43.55 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linutronix.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linutronix.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linutronix.de header.i=@linutronix.de header.b="kARlcCj1"; dkim=permerror (0-bit key) header.d=linutronix.de header.i=@linutronix.de header.b="Qi3Z+MBd" Date: Fri, 22 Aug 2025 15:00:58 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1755874860; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dqjZ2FeRciejuKj1vuvRV60pyGYjjUyZ2yQVMUXuz90=; b=kARlcCj1VaQCtyID5qM9U5jf8OCczRbDfNArfX+NHFSWn8SoGaLVHIac1T6XOZQpDoeap0 o7G+WcpPNwXxX+xzT5LjWJgWXOoCwHQaaB8DWkS5rcIf5RWfjHeVT2FRrrXbBapD2prpCI VnScMkU/RYKosuP/OE9DmZXnAihjFysc5dw0f/+kH9cyyen+VyeuYmkiyPe2m+G6pTvB2p INr7gv8YTjY6CNWdjS2kbgNlmJFCO5o+w+wXQzvO9fFpcJU0no2f2Yj55IjT3da7O4NYUe H295NJY7Ja6UDKx37+QAR58YKpWNUPPu0I0eY9AHYlKjrkSBPZZGxlk9ASQ9VA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1755874860; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dqjZ2FeRciejuKj1vuvRV60pyGYjjUyZ2yQVMUXuz90=; b=Qi3Z+MBdVhCZuw9sC17XSmLbbtr8J76yReWovQgPn5vR8kvdyHO5kmGZ4L6nB7x6wGBM4Z CbQge9jdoDa5dqBg== From: "tip-bot2 for Adrian Hunter" Sender: tip-bot2@linutronix.de Reply-to: linux-kernel@vger.kernel.org To: linux-tip-commits@vger.kernel.org Subject: [tip: x86/tdx] x86/tdx: Tidy reset_pamt functions Cc: Adrian Hunter , Dave Hansen , Rick Edgecombe , Binbin Wu , Kai Huang , Vishal Annapurve , x86@kernel.org, linux-kernel@vger.kernel.org Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-ID: <175587485872.1420.14305230506354791803.tip-bot2@tip-bot2> Robot-ID: Robot-Unsubscribe: Contact to get blacklisted from these emails Precedence: bulk Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable The following commit has been merged into the x86/tdx branch of tip: Commit-ID: a27b008a5d7e8c49740dfd4b560cd2d1abe722e4 Gitweb: https://git.kernel.org/tip/a27b008a5d7e8c49740dfd4b560cd2d1a= be722e4 Author: Adrian Hunter AuthorDate: Tue, 19 Aug 2025 18:58:10 +03:00 Committer: Dave Hansen CommitterDate: Fri, 22 Aug 2025 07:45:50 -07:00 x86/tdx: Tidy reset_pamt functions tdx_quirk_reset_paddr() was renamed to reflect that, in fact, the clearing is necessary only for hardware with a certain quirk. That is dealt with in a subsequent patch. Rename reset_pamt functions to contain "quirk" to reflect the new functionality, and remove the now misleading comment. Signed-off-by: Adrian Hunter Signed-off-by: Dave Hansen Reviewed-by: Rick Edgecombe Reviewed-by: Binbin Wu Acked-by: Kai Huang Acked-by: Vishal Annapurve Link: https://lore.kernel.org/all/20250819155811.136099-3-adrian.hunter%40i= ntel.com --- arch/x86/virt/vmx/tdx/tdx.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/arch/x86/virt/vmx/tdx/tdx.c b/arch/x86/virt/vmx/tdx/tdx.c index fc8d8e4..9e4638f 100644 --- a/arch/x86/virt/vmx/tdx/tdx.c +++ b/arch/x86/virt/vmx/tdx/tdx.c @@ -660,17 +660,17 @@ void tdx_quirk_reset_page(struct page *page) } EXPORT_SYMBOL_GPL(tdx_quirk_reset_page); =20 -static void tdmr_reset_pamt(struct tdmr_info *tdmr) +static void tdmr_quirk_reset_pamt(struct tdmr_info *tdmr) { tdmr_do_pamt_func(tdmr, tdx_quirk_reset_paddr); } =20 -static void tdmrs_reset_pamt_all(struct tdmr_info_list *tdmr_list) +static void tdmrs_quirk_reset_pamt_all(struct tdmr_info_list *tdmr_list) { int i; =20 for (i =3D 0; i < tdmr_list->nr_consumed_tdmrs; i++) - tdmr_reset_pamt(tdmr_entry(tdmr_list, i)); + tdmr_quirk_reset_pamt(tdmr_entry(tdmr_list, i)); } =20 static unsigned long tdmrs_count_pamt_kb(struct tdmr_info_list *tdmr_list) @@ -1142,15 +1142,7 @@ err_reset_pamts: * to the kernel. */ wbinvd_on_all_cpus(); - /* - * According to the TDX hardware spec, if the platform - * doesn't have the "partial write machine check" - * erratum, any kernel read/write will never cause #MC - * in kernel space, thus it's OK to not convert PAMTs - * back to normal. But do the conversion anyway here - * as suggested by the TDX spec. - */ - tdmrs_reset_pamt_all(&tdx_tdmr_list); + tdmrs_quirk_reset_pamt_all(&tdx_tdmr_list); err_free_pamts: tdmrs_free_pamt_all(&tdx_tdmr_list); err_free_tdmrs: