I spent a while chasing an issue where running 'virsh destroy foo' on an
HVM domain would result in an error being returned by the HV ioctl. What
I eventually discovered is that the code was doing a destroy op via XenD
and then also doing it via the hypervisor backend. It didn't typically
show as a problem for PV domains because it seems they took longer to
destroy - so were still around by the time the HV destroy was was called.
I tracked this issue down to the main dispatch methods in src/libvirt.c
which would indeed call both the XenD and HV driver backends for pause
destroy & shutdown methods. The patch attached simply returns as soon as
one of the driver methods returns a success return code.
Dan.
--
|=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=|
|=- Perl modules:
http://search.cpan.org/~danberr/ -=|
|=- Projects:
http://freshmeat.net/~danielpb/ -=|
|=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|