Re: [kvm-unit-tests PATCH 2/4] lib: s390x: sclp: Extend feature probing

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

 



On Tue, 11 May 2021 13:43:36 +0200
David Hildenbrand <david@xxxxxxxxxx> wrote:

> On 10.05.21 17:00, Janosch Frank wrote:
> > Lets grab more of the feature bits from SCLP read info so we can use
> > them in the cpumodel tests.
> > 
> > Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx>
> > Reviewed-by: Claudio Imbrenda <imbrenda@xxxxxxxxxxxxx>
> > ---
> >   lib/s390x/sclp.c | 20 ++++++++++++++++++++
> >   lib/s390x/sclp.h | 38 +++++++++++++++++++++++++++++++++++---
> >   2 files changed, 55 insertions(+), 3 deletions(-)
> > 
> > diff --git a/lib/s390x/sclp.c b/lib/s390x/sclp.c
> > index f11c2035..f25cfdb2 100644
> > --- a/lib/s390x/sclp.c
> > +++ b/lib/s390x/sclp.c
> > @@ -129,6 +129,13 @@ CPUEntry *sclp_get_cpu_entries(void)
> >   	return (CPUEntry *)(_read_info + read_info->offset_cpu);
> >   }
> >   
> > +static bool sclp_feat_check(int byte, int mask)
> > +{
> > +	uint8_t *rib = (uint8_t *)read_info;
> > +
> > +	return !!(rib[byte] & mask);
> > +}  
> 
> Instead of a mask, I'd just check for bit (offset) numbers within the
> byte.
> 
> static bool sclp_feat_check(int byte, int bit)
> {
> 	uint8_t *rib = (uint8_t *)read_info;
> 
> 	return !!(rib[byte] & (0x80 >> bit));
> }

using a mask might be useful to check multiple facilities at the same
time, but in that case the check should be

return (rib[byte] & mask) == mask

I have no strong opinions either way





[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux