Re: [PATCH v2 06/17] x86/virt/tdx: Re-initialize the extensions on runtime TDX module update

"Edgecombe, Rick P" <[email protected]> Thu, 30 Jul 2026 18:41:55 +0000
Newsgroups dev.linux.lists.linux-coco,org.kernel.vger.kvm,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On Fri, 2026-07-31 at 00:01 +0800, Xu Yilun wrote:
> > I've found issue in my implementation. If extensions are required at
> > boot up time but somehow not required after update, the code just skip
> > tdx_ext_init() and the update succeed, but after that the extension
> > features will break.
> > 
> > IOW, we should not update the metadata, we should follow the boot up
> > time metadata to ensure no feature changes.
> 
> Sorry, I changed my mind. I remember TDX module architector said "the
> host should not assume any feature/SEAMCALL must be associated with any
> extension, it is hidden from the host. Today a SEAMCALL is backed by an
> extension, tomorrow it may not".
> 
> So in this case, ext_required may flip across updates and we should
> honor the runtime metadata.

Then this is an incompatible update, no? Linux doesn't support incompatible
updates. We can keep it simpler.

> 
> I made another effort to combine common routines for ext init and
> update, but don't like how it turns out. If no one wants it that much,
> I'd rather stay unchanged: