WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] Re: [Xen-users] Nested Virtualisation question

To: Jeroen Groenewegen van der Weyden <groen692@xxxxxxxxx>
Subject: Re: [Xen-devel] Re: [Xen-users] Nested Virtualisation question
From: Keir Fraser <keir@xxxxxxx>
Date: Sat, 09 Apr 2011 12:15:29 +0100
Cc: "Christoph.Egger@xxxxxxx" <Christoph.Egger@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Dong, Eddie" <eddie.dong@xxxxxxxxx>, Tim Deegan <Tim.Deegan@xxxxxxxxxx>
Delivery-date: Sat, 09 Apr 2011 04:16:35 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:sender:user-agent:date:subject:from:to:cc :message-id:thread-topic:thread-index:in-reply-to:mime-version :content-type:content-transfer-encoding; bh=ClY2qIr2uT2s5q6+GVd6DrqGBtp2Osay3bCQkd1CKGg=; b=KTUUjPJ1fXgou03WEg92m+gJ0c//7Vnq2N+l+bUP4f3QrCfpZp6hoJbZcY85+npV8z z9ngGcQn6+QFilkHE1aUDE8FiW04NUVtw+39pHvMAj6Vhvb732I6ELHGMZ00XgUS7GN4 Zmxx2gKJ91mKv9v+ysaV7ITK0pnWEVWub6W/8=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:user-agent:date:subject:from:to:cc:message-id:thread-topic :thread-index:in-reply-to:mime-version:content-type :content-transfer-encoding; b=GsqotNBl1JG7wR0a2mGyT7ZVIaOV3vkoY1C9BGflTmoLICMvh6ncruEySflDq28Ipt J9aTOM/7TF4coowjZCdrabrZY/lK6/Z1HUAKXQQHJTM86xUM5aM6lbwERMcmImeTfXxk GXkQ+aVyClYlv34RsUed7vkwdlvgH2PPBpgfE=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4DA0325F.2000203@xxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acv2p27a6eJm5PD9WEmuKBuKy77XFA==
Thread-topic: [Xen-devel] Re: [Xen-users] Nested Virtualisation question
User-agent: Microsoft-Entourage/12.28.0.101117
On 09/04/2011 11:18, "Jeroen Groenewegen van der Weyden"
<groen692@xxxxxxxxx> wrote:

> The HAP is default set to one, I check this also with a dry run.
> Please confirm all this support just amd, because I only have Intel
> overhere.

Well, quite apart from being AMD only right now (Intel patches have been
posted in the past, but they're not in tree yet, and I very much doubt old
patches would directly apply to our current development tree), I'm also
pretty sure that your machine doesn't support Intel EPT -- if the processor
can't support HAP then we silently discard that configuration request when
creating a domain. That's why you get error 22 (EINVAL). But even if you did
have Intel EPT, because Intel's nested virt patches aren't in tree yet you'd
just get error 95 (EOPNOTSUPP) instead!

By the way you can tell if your system supports EPT by grepping in 'xm
dmesg' output (i.e., Xen's boot log) for a line stating "Extended Page
Tables (EPT)".

 -- Keir

> mfg,
> Jeroen
> 
> Op 9-4-2011 8:22, Keir Fraser schreef:
>> On 09/04/2011 06:07, "Jeroen Groenewegen van der Weyden"
>> <groen692@xxxxxxxxx>  wrote:
>> 
>>> The result with c/s23197
>>> 
>>> Regular domain now start, en stop normaly, (xl seems to have a problem
>>> though, after domain closes a domain null remains in de xl list/ xmdoe
>>> not have this.)
>>> for nestedVM I added the "nestedhvm=1" in the config file of the domain.
>>> but the domain does not start because of "invalid argument"
>> NestedHVM currently requires you to be using an AMD processor with hardware
>> nested paging (known as HAP by Xen). Most likely you need to add hap=1 to
>> your config file (and hope your processor supports it).
>> 
>>   -- Keir
>> 
>>> +++++++++ beging console
>>> hydra:/etc/xen/vm # xm create groscNestedVM
>>> Using config file "./groscNestedVM".
>>> Error: (22, 'Invalid argument')
>>> +++++++++ end console
>>> 
>>> +++++++++ begin xend.log
>>> hydra:/etc/xen/vm # tail /var/log/xen/xend.log
>>>       dominfo = XendDomainInfo.create(config)
>>>     File "/usr/lib64/python2.7/site-packages/xen/xend/XendDomainInfo.py",
>>> line 106, in create
>>>       vm.start()
>>>     File "/usr/lib64/python2.7/site-packages/xen/xend/XendDomainInfo.py",
>>> line 473, in start
>>>       XendTask.log_progress(0, 30, self._constructDomain)
>>>     File "/usr/lib64/python2.7/site-packages/xen/xend/XendTask.py", line
>>> 209, in log_progress
>>>       retval = func(*args, **kwds)
>>>     File "/usr/lib64/python2.7/site-packages/xen/xend/XendDomainInfo.py",
>>> line 2598, in _constructDomain
>>>       xc.hvm_set_param(self.domid, HVM_PARAM_NESTEDHVM, long(nestedhvm))
>>> Error: (22, 'Invalid argument')
>>> +++++++++++ end xend.log
>>> 
>>> 
>>> Op 7-4-2011 12:29, Tim Deegan schreef:
>>>> At 08:14 +0100 on 07 Apr (1302164093), Keir Fraser wrote:
>>>>> On 07/04/2011 08:09, "Keir Fraser"<keir.xen@xxxxxxxxx>   wrote:
>>>>>> Probably the same as this, happening often in the automated tests:
>>>>> Likely reason: nestedhvm_vcpu_initialise() being called unconditionally in
>>>>> hvm_vcpu_initialise() even though nestedhvm has not been configured for
>>>>> this
>>>>> domain. This then fails because there is no nestedhvm handler for Intel
>>>>> yet.
>>>> This bug should be fixed by 23175:e5a750d1bf9b, arriving at a staging
>>>> tree near you at any moment.
>>>> 
>>>>> And beyond that it's most likely an issue of a broken failure path, or a
>>>>> problem in the HAP code with cleaning up a half-created guest.
>>>> This one I'll look into now.
>>>> 
>>>> Tim.
>>>> 
>>>> 
>> 
>> 
> 



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>