[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH v1 17/22] target-i386: add cpuid Fn8000_001f
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [RFC PATCH v1 17/22] target-i386: add cpuid Fn8000_001f |
Date: |
Wed, 21 Sep 2016 18:24:41 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 |
On 21/09/2016 18:20, Brijesh Singh wrote:
> Hi Paolo,
>
> On 09/13/2016 06:07 PM, Paolo Bonzini wrote:
>>
>>
>> On 13/09/2016 16:49, Brijesh Singh wrote:
>>> Fn8000_001f cpuid provides the memory encryption (aka C-bit)
>>>
>>> Signed-off-by: Brijesh Singh <address@hidden>
>>> ---
>>> target-i386/cpu.c | 3 +++
>>> 1 file changed, 3 insertions(+)
>>>
>>> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
>>> index 6a1afab..e039c08 100644
>>> --- a/target-i386/cpu.c
>>> +++ b/target-i386/cpu.c
>>> @@ -2625,6 +2625,9 @@ void cpu_x86_cpuid(CPUX86State *env, uint32_t
>>> index, uint32_t count,
>>> *edx = 0;
>>> }
>>> break;
>>> + case 0x8000001F:
>>> + host_cpuid(index, 0, eax, ebx, ecx, edx);
>>> + break;
>>> case 0xC0000000:
>>> *eax = env->cpuid_xlevel2;
>>> *ebx = 0;
>>>
>>>
>>>
>>
>> This should only be visible to a SEV-enabled guest. Also, the xlevel
>> should be bumped to 0x8000001F for SEV-enabled guests.
>>
>
> Okay I will add sev_enabled() check before getting the cpuid.
>
> Regarding xlevel, I am not able to locate qemu code which bumped the
> xelevel for KVM enabled guests. Maybe I am missing something, looking at
> code gave me impression that xlevel is obtained using CPUID_80000000.
> One of the KVM RFC patch [1] updates the min level.
That patch makes sure that entry->eax is _at most_ 0x8000001f. Here you
want to make sure that CPUID[0x80000000].EAX == 0x8000001f for SEV guests.
I think you need to change x86_cpu_load_def:
object_property_set_int(OBJECT(cpu), def->xlevel, "xlevel", errp);
if SEV is enabled, use max(0x8000001f, def->xlevel) instead of def->xlevel.
Paolo
Do I need to do
> something more into qemu to bumped the xlevel?
>
> http://marc.info/?l=linux-mm&m=147190934724195&w=2
>
>> Paolo
>>
[Qemu-devel] [RFC PATCH v1 07/22] sev: add SEV launch start command, Brijesh Singh, 2016/09/13
[Qemu-devel] [RFC PATCH v1 12/22] sev: add SEV guest status command, Brijesh Singh, 2016/09/13
[Qemu-devel] [RFC PATCH v1 22/22] loader: reload bios image on ROM reset in SEV-enabled guest, Brijesh Singh, 2016/09/13