qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PULL v2 28/86] hw/cxl/component: Add utils for interleave parameter


From: Jonathan Cameron
Subject: Re: [PULL v2 28/86] hw/cxl/component: Add utils for interleave parameter encoding/decoding
Date: Mon, 27 Jun 2022 15:59:19 +0100

On Mon, 27 Jun 2022 14:29:19 +0100
Peter Maydell <peter.maydell@linaro.org> wrote:

> On Mon, 16 May 2022 at 21:51, Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > From: Jonathan Cameron <jonathan.cameron@huawei.com>
> >
> > Both registers and the CFMWS entries in CDAT use simple encodings
> > for the number of interleave ways and the interleave granularity.
> > Introduce simple conversion functions to/from the unencoded
> > number / size.  So far the iw decode has not been needed so is
> > it not implemented.
> >
> > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> > Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
> > Message-Id: <20220429144110.25167-27-Jonathan.Cameron@huawei.com>
> > Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> > ---
> >  include/hw/cxl/cxl_component.h |  8 ++++++++
> >  hw/cxl/cxl-component-utils.c   | 34 ++++++++++++++++++++++++++++++++++
> >  2 files changed, 42 insertions(+)
> >
> > diff --git a/include/hw/cxl/cxl_component.h b/include/hw/cxl/cxl_component.h
> > index 7d8f395cbe..4f69688c47 100644
> > --- a/include/hw/cxl/cxl_component.h
> > +++ b/include/hw/cxl/cxl_component.h
> > @@ -210,4 +210,12 @@ static inline int cxl_decoder_count_enc(int count)
> >      return 0;
> >  }
> >
> > +uint8_t cxl_interleave_ways_enc(int iw, Error **errp);
> > +uint8_t cxl_interleave_granularity_enc(uint64_t gran, Error **errp);
> > +
> > +static inline hwaddr cxl_decode_ig(int ig)
> > +{
> > +    return 1 << (ig + 8);
> > +}  
> 
> Hi; Coverity warns about this (CID 1488868) because the shift
> is calculated with 32-bit arithmetic but the function returns
> a 64-bit result. I assume that 'ig' is supposed to never be
> large enough that the result is >4GB, but we can make Coverity
> happy by using "1ULL" here.
> 
You are correct on range never hitting that.

Will send a fix in next few days.

Jonathan

> thanks
> -- PMM




reply via email to

[Prev in Thread] Current Thread [Next in Thread]