Daniel Veillard wrote:
On Wed, May 03, 2006 at 09:43:36AM -0600, Jim Fehlig wrote:
>Currently I can get info on hvm domains but unable to create them. The
>create request is sent to xend but then blocks reading from xend in
>xend_req(). No problem creating the domain using xm. I have looked at
>the config coming into xend and it is identical between xm and
>virsh/libvirt. Need to poke around xend and see why there is no
>response to the virsh/libvirt create request for hvm domains.
>
>
Hum, basically to debug this kind of things I spend my time in
/var/log/xend.log especially since it prints what it received at creation
time, you can at least check the informations coming from libvirt and
from xm look alike.
Unfortunately I won't be able to help you, first because I'm about to
take vacations for 3 weeks :-), second because I don't have one of those
new Intel CPUs, but I am sure others will give an hand if needed.
Well, I have found the problem but not a fix :-). When posting the
create op to xend, the libvirt code currently waits for a response from
xend (xend_req() is called after posting in xend_post()). For hvm
guests, xend does not respond and libvirt blocks indefinitely on read.
If I skip over the call to xend_req() for the create operation,
wait_for_devices() and subsequently unpause() are called and the hvm
guest is launched.
This "fix" is just an experimental hack and an appropriate fix would be
to have xend respond to the create op for hvm guests. Being unfamiliar
with the xend code, perhaps someone (Anthony :-)) could direct me to the
appropriate module in xend? Recall that all of this works for
paravirtualized guests so it may not be hard to find even for someone
that has just dabbled in the code.
Regards,
Jim