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

Re: [Xen-devel] Nested virtualization instabilities



On 16/12/2013 11:05, Etzion Bar-Noy wrote:
Hi.

I am using the unstable build-from-source of Xen community. It reports as 4.4, and was pulled from Git few days ago. The problem I will describe below appears on version 4.3.1, compiled from source as well. In both cases - I used spec file to create my own RPMs, because it's the right method of doing it.

Problem: When VM running under HVM which is a hypervisor (XenServer 6.2 or VMware ESXi5.5) attempts to start a (HVM) virtual machine, the following happens, 100% reproducible on this server.
XenServer: domain crash. XenServer restarts itself. It doesn't happen for PV on XenServer VM
VMware: An "unknown failure", which leads me to think that the nested virtualization properties are not forwarded correctly to DomU



<snip>

(XEN) <vm_launch_fail> error code 7
(XEN) domain_crash_sync called from vmcs.c:1293
(XEN) Domain 8 (vcpu#0) crashed on cpu#4:
(XEN) ----[ Xen-4.4-unstable  x86_64  debug=y  Not tainted ]----
(XEN) CPU:    4
(XEN) RIP:    0000:[<0000000000000000>]
(XEN) RFLAGS: 0000000000000002   CONTEXT: hvm guest
(XEN) rax: 0000000000000000   rbx: ffff830824f98000   rcx: ffff830824f9ff80
(XEN) rdx: ffff82d0801d0cf9   rsi: 0000000000000000   rdi: ffff82d0801de7fc
(XEN) rbp: ffff82d080105ab1   rsp: 0000000000000000   r8:  0000000000000004
(XEN) r9:  ffff82d080105b20   r10: ffff830824f9ff70   r11: 0000000000000000
(XEN) r12: ffff830824f9ff50   r13: ffff830654f9e000   r14: ffff830824f9ff30
(XEN) r15: ffff82d080187e43   cr0: 0000000000000039   cr4: 0000000000002050
(XEN) cr3: 00000000feffa000   cr2: 0000000000000000
(XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: 0000   cs: 0000

This is the problem.

Error code 7 is defined as "VM entry with invalid control field(s)"

At a guess, I would think that the L1 hypervisor is probing the control fields (as that seems to be the only way of detecting whether a feature is available or not), and this error might need bouncing back to the VM.

Otherwise, the L1 hypervisor has decided it can use a particular control, and Xen has insufficient validation if the L1 state.

Either way, it would be useful to know if there is a way for the hardware to identify which control field it has an issue with...

~Andrew
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.