freenode
Kernel & Low-Level

TDX quote buffer patch stalls over attestation design fight

A guest-side fix for growing attestation blobs reopened whether Intel TDX quotes belong in KVM or the host driver.

A Linux patch series to stop hard-coding Intel TDX guest attestation buffer sizes has been put on hold after maintainers said it collides with unfinished choices about how TDX quotes should work, and where their user APIs should live.

Peter Fang of Intel posted the work after a newer TDX module ABI began advertising a maximum TD Quote size. The guest driver still used a fixed 128 KB shared buffer with the host VMM. That size was raised earlier for DICE-style layered evidence, but Fang warned it will not hold when quotes carry post-quantum certificate chains, which can be an order of magnitude larger. The series would query the module limit when present, keep 128 KB as a fallback on older modules, and let configfs-tsm’s outblob grow with the platform instead of a compile-time ceiling. Physically contiguous allocation would still cap the buffer around the buddy allocator’s practical maximum, on the order of a few megabytes.

Rick Edgecombe objected that the change undercuts a prior justification for TD-scoped quote operations: that scoping them to the trust domain would spare the guest from size churn. He asked to pause the series until the host-side DICE and migration story is coherent, and looped in KVM maintainers.

That widened into an architecture debate. Attestation is growing on two axes at once: more platform and device detail in the evidence, and much larger crypto in the signed quote. Live migration wants a platform-oriented quote, not one tied to a single TD. Today’s QUOTE seamcall can run either platform-scoped or TD-scoped. Making reports carry all TD detail and keeping quotes platform-scoped would push uAPI toward the TDX host driver and out of KVM. Keeping quotes TD-scoped can leave reports smaller and fold extra detail in at quote time, but it keeps attestation closer to KVM and still forces guest buffer growth when crypto bloats.

Sean Christopherson, speaking with a KVM hat on, called fully platform-scoped quotes attractive and said TD-scoped quotes look like a workaround for not planning guest changes. He also pressed for a clear model of why KVM must be in the path at all. Edgecombe and Fang traced much of the awkwardness to SGX-era patterns that shuttle TD detail from the module through the guest and back, and noted that DICE, the industry format TDX is moving toward, fixes where report bits land inside the quote blob, so report and quote cannot simply be split for verifiers already expecting that layout.

Fang framed the fork as whether to stretch the old SGX-shaped design a bit longer or redesign for future attestation scale. Until that scoping and uAPI question is settled, the dynamic guest buffer work is not moving on its own.