]> git.ipfire.org Git - thirdparty/linux.git/commit
x86/virt/tdx: Clarify try_init_module_global() result caching
authorChao Gao <chao.gao@intel.com>
Wed, 20 May 2026 22:28:46 +0000 (15:28 -0700)
committerDave Hansen <dave.hansen@linux.intel.com>
Wed, 3 Jun 2026 15:14:39 +0000 (08:14 -0700)
commit1ffa6a10253c417b281aff3cbd02bdf43b2b159d
treea9638fbc34b1f5454d8548360a7be78c6d945552
parent5209e5bfe5cab593476c3e7754e42c5e47ce36de
x86/virt/tdx: Clarify try_init_module_global() result caching

TDX module global initialization is executed only once. The first call
caches both the return code and the "done" state in static function
variables.  Later callers read the variables. A lock protects the
saved state and serializes callers.

These variables will soon be moved to a global structure. Prepare for
that by treating the variables as a unit. Assign them together and
limit accesses to while the lock is held.

[ dhansen: mostly rewrite changelog ]

Signed-off-by: Chao Gao <chao.gao@intel.com>
Signed-off-by: Dave Hansen <dave.hansen@linux.intel.com>
Link: https://patch.msgid.link/20260520133909.409394-2-chao.gao@intel.com
arch/x86/virt/vmx/tdx/tdx.c