RE: [PATCH] x86: bitops: fix build regression
From: David Laight
Date: Thu May 07 2020 - 04:35:08 EST
From: hpa@xxxxxxxxx
> Sent: 07 May 2020 08:59
> On May 7, 2020 12:44:44 AM PDT, David Laight <David.Laight@xxxxxxxxxx> wrote:
> >From: Brian Gerst
> >> Sent: 07 May 2020 07:18
> >...
> >> > --- a/arch/x86/include/asm/bitops.h
> >> > +++ b/arch/x86/include/asm/bitops.h
> >> > @@ -54,7 +54,7 @@ arch_set_bit(long nr, volatile unsigned long
> >*addr)
> >> > if (__builtin_constant_p(nr)) {
> >> > asm volatile(LOCK_PREFIX "orb %1,%0"
> >> > : CONST_MASK_ADDR(nr, addr)
> >> > - : "iq" (CONST_MASK(nr) & 0xff)
> >> > + : "iq" ((u8)(CONST_MASK(nr) & 0xff))
> >>
> >> I think a better fix would be to make CONST_MASK() return a u8 value
> >> rather than have to cast on every use.
> >
> >Or assign to a local variable - then it doesn't matter how
> >the value is actually calculated. So:
> > u8 mask = CONST_MASK(nr);
> > asm volatile(LOCK_PREFIX "orb %1,%0"
> > : CONST_MASK_ADDR(nr, addr)
> > : "iq" mask
> >
> > David
> >
> >-
> >Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes,
> >MK1 1PT, UK
> >Registration No: 1397386 (Wales)
>
> "const u8" please...
Why, just a waste of disk space.
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)