Re: [PATCH v6 03/16] target-i386: Add cpu object access routines for Hypervisor level.

Don Slutz
2012-10-09T19:13:05Z

On 10/09/12 12:25, Marcelo Tosatti wrote:
> On Mon, Sep 24, 2012 at 10:32:05AM -0400, Don Slutz wrote:
>> These are modeled after x86_cpuid_get_xlevel and x86_cpuid_set_xlevel.
>>
>> Signed-off-by: Don Slutz <Don@CloudSwitch.com>
>> ---
>> target-i386/cpu.c | 29 +++++++++++++++++++++++++++++
>> 1 files changed, 29 insertions(+), 0 deletions(-)
>>
>> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
>> index 25ca986..451de12 100644
>> --- a/target-i386/cpu.c
>> +++ b/target-i386/cpu.c
>> @@ -1166,6 +1166,32 @@ static void x86_cpuid_set_tsc_freq(Object *obj, Visitor *v, void *opaque,
>> cpu->env.tsc_khz = value / 1000;
>> }
>>
>> +static void x86_cpuid_get_hv_level(Object *obj, Visitor *v, void *opaque,
>> + const char *name, Error **errp)
>> +{
>> + X86CPU *cpu = X86_CPU(obj);
>> +
>> + visit_type_uint32(v, &cpu->env.cpuid_hv_level, name, errp);
>> +}
>> +
>> +static void x86_cpuid_set_hv_level(Object *obj, Visitor *v, void *opaque,
>> + const char *name, Error **errp)
>> +{
>> + X86CPU *cpu = X86_CPU(obj);
>> + uint32_t value;
>> +
>> + visit_type_uint32(v, &value, name, errp);
>> + if (error_is_set(errp)) {
>> + return;
>> + }
>> +
>> + if (value != 0 && value < 0x40000000) {
>> + value += 0x40000000;
>> + }
> Whats the purpose of this? Adds ambiguity.
Will add more info in this commit message.
-Don