Re: [PATCH v2 09/10] x86/virt/tdx: Reduce TDMR's reserved areas by using CMRs to find memory holes

From: Huang, Kai
Date: Tue Aug 27 2024 - 03:24:32 EST


On Tue, 2024-08-20 at 21:38 +0300, Adrian Hunter wrote:
> > diff --git a/arch/x86/virt/vmx/tdx/tdx.h b/arch/x86/virt/vmx/tdx/tdx.h
> > index 861ddf2c2e88..4b43eb774ffa 100644
> > --- a/arch/x86/virt/vmx/tdx/tdx.h
> > +++ b/arch/x86/virt/vmx/tdx/tdx.h
> > @@ -40,6 +40,10 @@
> >  #define MD_FIELD_ID_UPDATE_VERSION 0x0800000100000005ULL
> >  #define MD_FIELD_ID_INTERNAL_VERSION 0x0800000100000006ULL
> >  
> >
> >
> >
> > +#define MD_FIELD_ID_NUM_CMRS 0x9000000100000000ULL
> > +#define MD_FIELD_ID_CMR_BASE0 0x9000000300000080ULL
> > +#define MD_FIELD_ID_CMR_SIZE0 0x9000000300000100ULL
>
> For scripted checking against "global_metadata.json" it might be better
> to stick to the same field names e.g.
>
> MD_FIELD_ID_CMR_BASE0 -> MD_FIELD_ID_CMR_BASE
>
>

I ended up with

#define MD_FIELD_ID_CMR_BASE(_i) (0x9000000300000080ULL + (u16)_i)
#define MD_FIELD_ID_CMR_SIZE(_i) (0x9000000300000100ULL + (u16)_i)

.. due to they are arrays anyway.