Re: [PATCH 2/2] s390: squash facilities_src.h into gen_facilities.c

From: Paul Bolle
Date: Tue Nov 08 2016 - 04:18:38 EST


On Mon, 2016-11-07 at 14:38 +0100, Heiko Carstens wrote:
> On Mon, Nov 07, 2016 at 02:13:06PM +0100, Paul Bolle wrote:
> > --- /dev/null
> > +++ b/arch/s390/include/asm/facilities.h
> > @@ -0,0 +1,43 @@
> > +#ifndef __ASM_FACILITIES_H
> > +#define __ASM_FACILITIES_H
> > +
> > +#define FACILITIES_ALS \
> > + _AC(IS_BUILTIN(CONFIG_HAVE_MARCH_Z900_FEATURES), UL) << 0 | /* N3 instructions */ \
>
> So, this is wrong. It should be " << 63" to match the existing code.

Bother.

> > +#define FACILITIES_KVM \
> > + _BITUL(0) | /* N3 instructions */ \
> > + _BITUL(1) | /* z/Arch mode installed */ \
> > + _BITUL(2) | /* z/Arch mode active */ \
> > + _BITUL(3) | /* DAT-enhancement */ \
> > + _BITUL(4) | /* idte segment table */ \
> > + _BITUL(5) | /* idte region table */ \
> > + _BITUL(6) | /* ASN-and-LX reuse */ \
> > + _BITUL(7) | /* stfle */ \
> > + _BITUL(8) | /* enhanced-DAT 1 */ \
> > + _BITUL(9) | /* sense-running-status */ \
> > + _BITUL(10) | /* conditional sske */ \
> > + _BITUL(13) | /* ipte-range */ \
> > + _BITUL(14) /* nonquiescing key-setting */ \
> > + , \
> > + _BITUL(9) | /* transactional execution */ \
> > + _BITUL(11) | /* access-exception-fetch/store indication */ \
>
> And this is exactly what I want to avoid: start counting from zero again if
> we cross a double word. It _must_ read 73, 75, otherwise this becomes the
> unmaintainable and error prone mess we had before.
>
> I just want a list with bit numbers and the rest must be created
> automatically.

This sounds like a can of worms. Better keep it closed.

Thanks,


Paul Bolle