Re: [PATCH v10 05/16] x86/virt/tdx: Add skeleton to enable TDX on demand

From: Dave Hansen
Date: Thu Mar 23 2023 - 18:12:32 EST


On 3/23/23 15:09, Huang, Kai wrote:
> 1) In TDH.SYS.INIT, ask TDX module team to return TDX_RND_NO_ENTROPY instead of
> TDX_SYS_BUSY when running out of entropy.
>
> 2) In TDH.SYS.KEY.CONFIG, ask TDX module to return TDX_RND_NO_ENTROPY instead of
> TDX_KEY_GENERATION_FAILED when running out of entropy. Whether
> TDX_KEY_GENERATION_FAILED should be still kept is up to TDX module team
> (because it looks running concurrent PCONFIGs is also related).
>
> 3) Ask TDX module to always return TDX_RND_NO_ENTROPY in _ALL_ SEAMCALLs and
> keep this behaviour for future TDX modules too.

Yes, that's all fine.

> 4) In the common seamcall(), retry on TDX_RND_NO_ENTROPY.
>
> In terms of how many times to retry, I will use a fixed value for now, similar
> to the kernel code below:
>
> #define RDRAND_RETRY_LOOPS 10

Heck, you could even just use RDRAND_RETRY_LOOPS directly. It's
hard(er) to bikeshed your choice of a random number that you didn't even
pick.