Re: [PATCH V4 8/9] platform/x86/intel/sdsi: Simplify ascii printing

From: Ilpo Järvinen
Date: Thu Apr 11 2024 - 09:29:54 EST


On Thu, 11 Apr 2024, Ilpo Järvinen wrote:

> On Wed, 10 Apr 2024, David E. Box wrote:
>
> > Add #define for feature length and move NUL assignment from callers to
> > get_feature().
> >
> > Signed-off-by: David E. Box <david.e.box@xxxxxxxxxxxxxxx>
> > Reviewed-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@xxxxxxxxxxxxxxx>
> > ---
> > V4 - Move NUL assignment to get_feature() and increment FEAT_LEN.
> >
> > V3 - Add FEAT_LEN #def
> >
> > V2 - Split of V1 patch 7
> >
> > tools/arch/x86/intel_sdsi/intel_sdsi.c | 17 ++++++++---------
> > 1 file changed, 8 insertions(+), 9 deletions(-)
> >
> > diff --git a/tools/arch/x86/intel_sdsi/intel_sdsi.c b/tools/arch/x86/intel_sdsi/intel_sdsi.c
> > index ba2a6b6645ae..301213370740 100644
> > --- a/tools/arch/x86/intel_sdsi/intel_sdsi.c
> > +++ b/tools/arch/x86/intel_sdsi/intel_sdsi.c
> > @@ -43,6 +43,7 @@
> > #define METER_CERT_MAX_SIZE 4096
> > #define STATE_MAX_NUM_LICENSES 16
> > #define STATE_MAX_NUM_IN_BUNDLE (uint32_t)8
> > +#define FEAT_LEN 5 /* 4 plus NUL terminator */
> >
> > #define __round_mask(x, y) ((__typeof__(x))((y) - 1))
> > #define round_up(x, y) ((((x) - 1) | __round_mask(x, y)) + 1)
> > @@ -321,10 +322,11 @@ static char *content_type(uint32_t type)
> > }
> > }
> >
> > -static void get_feature(uint32_t encoding, char *feature)
> > +static void get_feature(uint32_t encoding, char feature[5])
> > {
> > char *name = (char *)&encoding;
> >
> > + feature[4] = '\0';
> > feature[3] = name[0];
> > feature[2] = name[1];
> > feature[1] = name[2];
>
> Works, assuming none of the name bytes are 0.

Before somebody starts to wonder, while writing that, I thought this patch
was also about alignment (were <4 chars would have mattered), which was
just wrong recollection from my part and related to some other patch in
this series.

> Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@xxxxxxxxxxxxxxx>

--
i.