Re: [Bug 53611] New: nVMX: Add nested EPT

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

 



On 2013-03-05 05:45, Nakajima, Jun wrote:
> On Tue, Feb 26, 2013 at 11:43 AM, Jan Kiszka <jan.kiszka@xxxxxx> wrote:
>> On 2013-02-26 15:11, Nadav Har'El wrote:
>>> On Thu, Feb 14, 2013, Nakajima, Jun wrote about "Re: [Bug 53611] New: nVMX: Add nested EPT":
>>>> We have started looking at the pataches first. But I couldn't
>>>> reproduce the results by simply applying the original patches to v3.6:
>>>> - L2 Ubuntu 12.04 (64-bit)  (smp 2)
>>>> - L1 Ubuntu 12.04 (64-bit) KVM (smp 2)
>>>> - L0 Ubuntu 12.04 (64-bit)-based. kernel/KVM is v3.6 + patches (the
>>>> ones in nept-v2.tgz).
>>>> https://bugzilla.kernel.org/attachment.cgi?id=93101
>>>>
>>>> Without the patches, the L2 guest works. With it, it hangs at boot
>>>> time (just black screen):
>>>> - EPT was detected by L1 KVM.
>>>> - UP L2 didn't help.
>>>> - Looks like it's looping at EPT_walk_add_generic at the same address in L0.
>>>>
>>>> Will take a closer look. It would be helpful if the test configuration
>>>> (e.g kernel/commit id used, L1/L2 guests) was documented as well.
>>>
>>> I sent the patches in August 1st, and they applied to commit
>>> ade38c311a0ad8c32e902fe1d0ae74d0d44bc71e from a week earlier.
>>>
>>> In most of my tests, L1 and L2 were old images - L1 had Linux 2.6.33,
>>> while L2 had Linux 2.6.28. In most of my tests both L1 and L2 were UP.
>>>
>>> I've heard another report of my patch not working with newer L1/L2 -
>>> the report said that L2 failed to boot (like you reported), and also
>>> that L1 became unstable (running anything in it gave a memory fault).
>>> So it is very likely that this code still has bugs - but since I already
>>> know of errors and holes that need to be plugged (see the announcement file
>>> together with the patches), it's not very surprising :( These patches
>>> definitely need some lovin', but it's easier than starting from scratch.
>>
>> FWIW, I'm playing with them on top of kvm-3.6-2 (second pull request for
>> 3.6) for a while. They work OK for my use case (static mapping) but
>> apparently lock up L2 when starting KVM on KVM, just as reported. I
>> didn't look into any details there, still busy with fixing other issues
>> like CR0/CR4 handling (which I came across while adding unrestricted
>> guest support on top of EPT).
> 
> I have some updates on this. We rebased the patched to the latest KVM
> (L0). It turned out that the version of L1 KVM/Linux matters. At that
> time, actually I used v3.7 kernel for L1, and the L2 didn't work as I
> described above. If I use v3.5 or older for L1, L2 works with the EPT
> patches. So, I guess some changes made to v3.6 might have exposed a
> bug with the nested EPT patches or somewhere. We are looking at the
> changes to root-cause it.

Great to hear! Would you mind to share your work early, even when it's
not yet stable?

At least regarding lockups or misbehaviors of L1 and L2, some of the
patches I posted recently may help. Did you try to merge them as well?

Thanks,
Jan


Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux