From: "Edgecombe, Rick P" <rick.p.edgecombe@intel.com>
To: "Hansen, Dave" <dave.hansen@intel.com>,
"Huang, Kai" <kai.huang@intel.com>, "bp@alien8.de" <bp@alien8.de>,
"peterz@infradead.org" <peterz@infradead.org>,
"hpa@zytor.com" <hpa@zytor.com>,
"mingo@redhat.com" <mingo@redhat.com>,
"tglx@linutronix.de" <tglx@linutronix.de>,
"thomas.lendacky@amd.com" <thomas.lendacky@amd.com>
Cc: "ashish.kalra@amd.com" <ashish.kalra@amd.com>,
"Gao, Chao" <chao.gao@intel.com>,
"seanjc@google.com" <seanjc@google.com>,
"x86@kernel.org" <x86@kernel.org>,
"kas@kernel.org" <kas@kernel.org>,
"sagis@google.com" <sagis@google.com>,
"Chatre, Reinette" <reinette.chatre@intel.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"Williams, Dan J" <dan.j.williams@intel.com>,
"Chen, Farrah" <farrah.chen@intel.com>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"pbonzini@redhat.com" <pbonzini@redhat.com>,
"dwmw@amazon.co.uk" <dwmw@amazon.co.uk>,
"Yamahata, Isaku" <isaku.yamahata@intel.com>,
"nik.borisov@suse.com" <nik.borisov@suse.com>
Subject: Re: [PATCH v5 3/7] x86/virt/tdx: Mark memory cache state incoherent when making SEAMCALL
Date: Tue, 12 Aug 2025 00:51:38 +0000 [thread overview]
Message-ID: <3bd5e7ff5756b80766553b5dfc28476aff1d0583.camel@intel.com> (raw)
In-Reply-To: <03d3eecaca3f7680aacc55549bb2bacdd85a048f.1753679792.git.kai.huang@intel.com>
On Tue, 2025-07-29 at 00:28 +1200, Kai Huang wrote:
> +static __always_inline u64 do_seamcall(sc_func_t func, u64 fn,
> + struct tdx_module_args *args)
> +{
> + lockdep_assert_preemption_disabled();
> +
> + /*
> + * SEAMCALLs are made to the TDX module and can generate dirty
> + * cachelines of TDX private memory. Mark cache state incoherent
> + * so that the cache can be flushed during kexec.
> + *
> + * This needs to be done before actually making the SEAMCALL,
> + * because kexec-ing CPU could send NMI to stop remote CPUs,
> + * in which case even disabling IRQ won't help here.
> + */
> + this_cpu_write(cache_state_incoherent, true);
> +
> + return func(fn, args);
> +}
> +
Functionally it looks good now, but I still think the chain of names is not
acceptable:
seamcall()
sc_retry()
do_seamcall()
__seamcall()
sc_retry() is the only one with a hint of what is different about it, but it
randomly uses sc abbreviation instead of seamcall. That is an existing thing.
But the additional one should be named with something about the cache part that
it does, like seamcall_dirty_cache() or something. "do_seamcall()" tells the
reader nothing.
next prev parent reply other threads:[~2025-08-12 0:51 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-28 12:28 [PATCH v5 0/7] TDX host: kexec/kdump support Kai Huang
2025-07-28 12:28 ` [PATCH v5 1/7] x86/kexec: Consolidate relocate_kernel() function parameters Kai Huang
2025-08-06 6:53 ` Huang, Kai
2025-08-06 13:00 ` Tom Lendacky
2025-08-06 22:29 ` Huang, Kai
2025-07-28 12:28 ` [PATCH v5 2/7] x86/sme: Use percpu boolean to control WBINVD during kexec Kai Huang
2025-07-28 12:28 ` [PATCH v5 3/7] x86/virt/tdx: Mark memory cache state incoherent when making SEAMCALL Kai Huang
2025-08-01 8:23 ` Chao Gao
2025-08-04 12:47 ` Huang, Kai
2025-08-12 0:51 ` Edgecombe, Rick P [this message]
2025-08-12 1:32 ` Huang, Kai
2025-08-12 1:34 ` Edgecombe, Rick P
2025-08-12 2:03 ` Huang, Kai
2025-08-14 0:09 ` Huang, Kai
2025-07-28 12:28 ` [PATCH v5 4/7] x86/kexec: Disable kexec/kdump on platforms with TDX partial write erratum Kai Huang
2025-07-28 12:28 ` [PATCH v5 5/7] x86/virt/tdx: Remove the !KEXEC_CORE dependency Kai Huang
2025-07-28 12:28 ` [PATCH v5 6/7] x86/virt/tdx: Update the kexec section in the TDX documentation Kai Huang
2025-07-28 12:28 ` [PATCH v5 7/7] KVM: TDX: Explicitly do WBINVD when no more TDX SEAMCALLs Kai Huang
2025-08-01 8:30 ` Chao Gao
2025-08-04 12:48 ` Huang, Kai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3bd5e7ff5756b80766553b5dfc28476aff1d0583.camel@intel.com \
--to=rick.p.edgecombe@intel.com \
--cc=ashish.kalra@amd.com \
--cc=bp@alien8.de \
--cc=chao.gao@intel.com \
--cc=dan.j.williams@intel.com \
--cc=dave.hansen@intel.com \
--cc=dwmw@amazon.co.uk \
--cc=farrah.chen@intel.com \
--cc=hpa@zytor.com \
--cc=isaku.yamahata@intel.com \
--cc=kai.huang@intel.com \
--cc=kas@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=nik.borisov@suse.com \
--cc=pbonzini@redhat.com \
--cc=peterz@infradead.org \
--cc=reinette.chatre@intel.com \
--cc=sagis@google.com \
--cc=seanjc@google.com \
--cc=tglx@linutronix.de \
--cc=thomas.lendacky@amd.com \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®