Re: [PATCH v8 5/5] x86/tdx: Add Quote generation support

Sathyanarayanan Kuppuswamy
2022-07-21T18:57:33Z

On 7/21/22 11:52 AM, Dave Hansen wrote:
> On 7/21/22 11:42, Isaku Yamahata wrote:
>> Regarding to the size of quote, there is no hard limit because it's for future
>> usage. But here is a rough idea about it.
>>
>> - 4KB(1 page) can accommodate TDREPORT that is defined right now.
>> - 128KB is too small for foreseen use cases.
>> - 1MB is too big. big enough for future.
>
> Again, we're off in the weeds.
>
> How does the VMM know how much to read/write? I have a theory: the spec
> says that R12 is:
>
> "Shared 4KB GPA as input – the memory contains a
> TDREPORT_STRUCT."
>
> That's *A* 4KB GPA. The maximum is one 4KB page. That's the only thing
> that makes sense because there's no length in the ABI anywhere.
>
> What am I missing?

I think you are looking into the old spec. Please check the version
"FEBRUARY 2022"

Following are the ABI details:

R11 - TDG.VP.VMCALL< GetQuote > sub-function per Table 2-3
R12 - Shared GPA as input – the memory contains a TDREPORT_STRUCT. The
same buffer is used as output – the memory contains a TD Quote.
R13 - Size of shared GPA. The size must be 4KB-aligned.

--
Sathyanarayanan Kuppuswamy
Linux Kernel Developer