Re: [PATCH v3 4/4] platform/x86: intel_tdx_attest: Add TDX Guest attestation interface driver

Kai Huang
2022-04-21T00:11:35Z

On Wed, 2022-04-20 at 16:45 -0700, Sathyanarayanan Kuppuswamy wrote:
> If we want to support multiple GetQuote requests in parallel, then we
> need some way to uniquely identify the GetQuote requests. So that when
> we get completion notification, we can understand which request is
> completed. This part is not mentioned/discussed in ABI spec. So we want
> to serialize the requests for now.
>

Yes it's unfortunate that this part (whether concurrent GetQuote requests are
supported by TDX architecture) is not explicitly mentioned in GHCI spec. I am
fine with only supporting GetQuote requests one by one. AFAICT there's no
request to support concurrent GetQuote requests anyway. What concerns me is
exactly how explain this.

As I said, we have GET_QUOTE_IN_FLIGHT flag now. Theoretically, you can queue
multiple GetQuote requests, and when you receive the interrupt, you check which
buffer has GET_QUOTE_IN_FLIGHT cleared. That buffer is the one with Quote
ready. However I am not 100% sure whether above will always work. Interrupt
can get lost when there are multiple Quotes ready in multiple buffer in very
short time period, etc? Perhaps Isaku can provide more input here.

Anyway, how about explaining in this way:

"The GHCI spec doesn't clearly say whether TDX can support or how to support
multiple GetQuote requests in parallel. Attestation request is not supposed to
be frequent and should not be in performance critical path. Only support
GetQuote requests in serialized way for now."

--
Thanks,
-Kai