qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] x86 tlb_fill in memory_helper.c


From: Alexander Boettcher
Subject: Re: [Qemu-devel] [PATCH] x86 tlb_fill in memory_helper.c
Date: Thu, 16 Feb 2017 14:27:30 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0

On 16.02.2017 13:57, Paolo Bonzini wrote:
> 
> 
> On 16/02/2017 13:57, Alexander Boettcher wrote:
>> Hello Paolo,
>>
>> On 16.02.2017 12:53, Paolo Bonzini wrote:
>>> As you noticed, the problem is that now cpu_vmexit is called without a
>>> cpu_restore_state before.
>>>
>>> The right fix is to pass the retaddr to cpu_vmexit (via
>>> cpu_svm_check_intercept_param); something like this untested patch:
>>
>> ...
>>
>>>
>>> If it works for you we can include it.
>>
>> thank you for the quick patch. It works like a charm.
>>
>> Do you take care of adding the patch, please ? (I can of course also do.)
> 
> Great, I will look at it.  Have you debugged the exact failure mode to
> include something in the commit message?

I'm not familiar with the SVM model, but what I did was to

compare mainly the output of the svm exceptions on Qemu 2.4.1 and
2.5.0++ as reported by the Nova hypervisor runing in Qemu.

There one gets mysterious SVM exception 0x4e (PF), where

virtaddr = cr2 = VMCB::exitinfo2

cr2 is around the 0 address - where actually is nothing in the guest VM.

Later on one gets a SVM exception of 0x7f, and then your VM is gone.

Hope it helps to make up a useful commit message,

Alex.

-- 
Alexander Boettcher
Genode Labs

http://www.genode-labs.com - http://www.genode.org

Genode Labs GmbH - Amtsgericht Dresden - HRB 28424 - Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth



reply via email to

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