Re: [PATCH v11 08/20] x86/virt/tdx: Get information about TDX module and TDX-capable memory

From: kirill.shutemov@xxxxxxxxxxxxxxx
Date: Thu Jun 08 2023 - 19:55:01 EST


On Thu, Jun 08, 2023 at 04:29:19PM -0700, Isaku Yamahata wrote:
> On Thu, Jun 08, 2023 at 02:41:28PM +0300,
> "kirill.shutemov@xxxxxxxxxxxxxxx" <kirill.shutemov@xxxxxxxxxxxxxxx> wrote:
>
> > On Thu, Jun 08, 2023 at 02:40:27AM +0000, Huang, Kai wrote:
> > > On Thu, 2023-06-08 at 03:27 +0300, kirill.shutemov@xxxxxxxxxxxxxxx wrote:
> > > > On Mon, Jun 05, 2023 at 02:27:21AM +1200, Kai Huang wrote:
> > > > > For now both 'tdsysinfo_struct' and CMRs are only used during the module
> > > > > initialization. But because they are both relatively big, declare them
> > > > > inside the module initialization function but as static variables.
> > > >
> > > > This justification does not make sense to me. static variables will not be
> > > > freed after function returned. They will still consume memory.
> > > >
> > > > I think you need to allocate/free memory dynamically, if they are too big
> > > > for stack.
> > >
> > >
> > > I do need to keep tdsysinfo_struct as it will be used by KVM too.
> >
> > Will you pass it down to KVM from this function? Will KVM use the struct
> > after the function returns?
>
> KVM needs tdsysinfo_struct to create guest TD. It doesn't require
> 1024-alignment.

How KVM gets it from here?

--
Kiryl Shutsemau / Kirill A. Shutemov