On Tue, Jul 21, 2015 at 06:40:16PM -0500, Michael Roth wrote: > Current code for generating DRC type mask generates the following warning with > clang -fsanitizer=undefined -fsanitizer=shift: > > runtime error: left shift of negative value -1 > > Fix this by calculating the mask like a sane person would. > > Signed-off-by: Michael Roth <mdr...@linux.vnet.ibm.com>
Sorry I missed this before - please CC me on patches to the spapr code. I actually already wrote an equivalent patch and put it in spapr-next. > --- > hw/ppc/spapr_drc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/hw/ppc/spapr_drc.c b/hw/ppc/spapr_drc.c > index ee87432..0e7d725 100644 > --- a/hw/ppc/spapr_drc.c > +++ b/hw/ppc/spapr_drc.c > @@ -32,7 +32,7 @@ > > #define DRC_CONTAINER_PATH "/dr-connector" > #define DRC_INDEX_TYPE_SHIFT 28 > -#define DRC_INDEX_ID_MASK (~(~0 << DRC_INDEX_TYPE_SHIFT)) > +#define DRC_INDEX_ID_MASK ((1 << DRC_INDEX_TYPE_SHIFT) - 1) > > static sPAPRDRConnectorTypeShift get_type_shift(sPAPRDRConnectorType type) > { -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
pgp8338gFQg_C.pgp
Description: PGP signature