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

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

 



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.

>
> Given that I'm porting now patches between that branch and "next" back
> and forth (I depend on EPT), it would be really great if someone
> familiar with the KVM MMU (or enough time) could port the series to the
> current git head. That would not solve remaining bugs but could trigger
> more development, maybe also help me jumping into this.
>
> Thanks,
> Jan
>


-- 
Jun
Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[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