qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v7 7/9] i386: Add support for CPUID_8000_001E fo


From: Eduardo Habkost
Subject: Re: [Qemu-devel] [PATCH v7 7/9] i386: Add support for CPUID_8000_001E for AMD
Date: Tue, 8 May 2018 11:16:32 -0300
User-agent: Mutt/1.9.2 (2017-12-15)

On Mon, May 07, 2018 at 11:44:31PM +0000, Moger, Babu wrote:
[...]
> > > +
> > >  /*
> > >   * Encode cache info for CPUID[0x80000006].ECX and
> > CPUID[0x80000006].EDX
> > >   * @l3 can be NULL.
> > > @@ -4105,6 +4111,14 @@ void cpu_x86_cpuid(CPUX86State *env,
> > uint32_t index, uint32_t count,
> > >              break;
> > >          }
> > >          break;
> > > +    case 0x8000001E:
> > > +        assert(cpu->core_id <= 255);
> > 
> > Where's the code that ensures this assert() line can't be
> > triggered by any command-line configuration?
> 
> I did not understand this. Can you please elaborate. Thanks 

The user must not be able to trigger an assert(), so we need to
ensure that core_id will never be larger than 255.  Is there
existing code that ensures that?

> 
> > 
> > > +        *eax = EXTENDED_APIC_ID((cs->nr_threads - 1),
> > > +               cpu->socket_id, cpu->core_id, cpu->thread_id);
> > > +        *ebx = (cs->nr_threads - 1) << 8 | cpu->core_id;
> > > +        *ecx = cpu->socket_id;
> > > +        *edx = 0;
> > > +        break;
> > >      case 0xC0000000:
> > >          *eax = env->cpuid_xlevel2;
> > >          *ebx = 0;
> > > --
> > > 2.7.4
> > >
> > >
> > 
> > --
> > Eduardo

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]