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

Re: [Xen-devel] [PATCH 4/7] x86/viridian: get rid of the magic numbers in CPUID leaves 1 and 2



> -----Original Message-----
> From: Jan Beulich [mailto:JBeulich@xxxxxxxx]
> Sent: 20 March 2017 12:15
> To: Paul Durrant <Paul.Durrant@xxxxxxxxxx>
> Cc: Andrew Cooper <Andrew.Cooper3@xxxxxxxxxx>; xen-
> devel@xxxxxxxxxxxxxxxxxxxx
> Subject: Re: [PATCH 4/7] x86/viridian: get rid of the magic numbers in CPUID
> leaves 1 and 2
> 
> >>> On 17.03.17 at 10:57, <paul.durrant@xxxxxxxxxx> wrote:
> > --- a/xen/arch/x86/hvm/viridian.c
> > +++ b/xen/arch/x86/hvm/viridian.c
> > @@ -119,14 +119,16 @@ void cpuid_viridian_leaves(const struct vcpu *v,
> uint32_t leaf,
> >      switch ( leaf )
> >      {
> >      case 0:
> > +        /* See section 2.4.1 of the specification */
> >          res->a = 0x40000006; /* Maximum leaf */
> > -        res->b = 0x7263694d; /* Magic numbers  */
> > -        res->c = 0x666F736F;
> > -        res->d = 0x76482074;
> > +        res->b = *(uint32_t *)"Micr";
> > +        res->c = *(uint32_t *)"osof";
> > +        res->d = *(uint32_t *)"t Hv";
> >          break;
> >
> >      case 1:
> > -        res->a = 0x31237648; /* Version number */
> > +        /* See section 2.4.2 of the specification */
> > +        res->a = *(uint32_t *)"Hv#1";
> >          break;
> 
> You're the maintainer of the code, so I can't really reject this, but
> (ugly) casts don't seem any better to me, the more that they cast
> away constness. Would
> 
>         memcpy(&res->a, "Hv#1", 4);
> 
> etc be acceptable to you?

I'm ok with that.

  Paul

> 
> Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.