Quoting Daniel Veillard <veillard(a)redhat.com>:
On Thu, Jul 20, 2006 at 09:16:16AM -0400, pvetere(a)redhat.com wrote:
> Hi, I think I may have found a bug in libvirt and wanted see what people
> thought. I'm using the stock FC5 installation at the moment (with
> xen 3.0.1),
> and the newest version of libvirt. I am noticing that with xen
> 3.0.1 and newer
> versions of libvirt, getDomainsID() seems to return bogus values.
<snip>
> After some digging around in the code, I believe that libvirt is
incorrectly
> identifying the hypervisor as being "old" in
> xen_internal.c:xenHypervisorInit,
> and is therefore passing the incorrect parameter structure into the
> hypervisor
> when it makes its ioctl in xen_internal.c:xenHypervisorListDomains.
I assume it's an i386 platform, because the ABI breakage should not
show up on x86_64.
Yes, that's correct; it's an i386 platform.
> I've tried this same test on a system running xen 3.0.2, and as I expected
> everything works fine. So, there must be something different about
> xen 3.0.1
> that libvirt is not accounting for.
That's possible. If you still have that setup around, could you rerun
virsh (as root ) under gdb and put a breakpoint in xenHypervisorInit
and see what's happening in the first hypervisor call values of hc.op and
cmd, and return value (hv_version). Then what's happen in the second call
(is it failing too ?) in that same routine.
Sure, I can do this. I'll let you know what I find later on today.
Pete