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

Re: [Xen-devel] [PATCH OSSTEST] Toolstack::xl: Support for ACPI fallback for shutdown



On Thu, 2015-05-07 at 10:07 +0100, Ian Campbell wrote:
> HVM guests which do not include PV drivers will not shutdown after a
> simple "xl shutdown". Add a runvar to indicate that the guest will
> shutdown in response to an ACPI power event and apply this to the win7
> and winxp test jobs.
> 
> Tested with:
>     test-amd64-amd64-xl-qemuu-winxpsp3
>     test-amd64-amd64-xl-qemuu-win7-amd64
>     test-amd64-amd64-xl-qemuu-debianhvm-amd64
>     test-amd64-amd64-xl
> 
> The first two correctly used the extra flag and the domains shutdown,
> the other two correctly didn't use the extra flag and still shutdown.
> Not currently implemented for libvirt, since we currently have no
> libvirt tests I could try it with.

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Virtualization_Deployment_and_Administration_Guide/sect-Managing_guest_virtual_machines_with_virsh-Shutting_down_rebooting_and_force_shutdown_of_a_guest_virtual_machine.html
suggests that virsh reboot can take a comma separated list for the
--mode option and will try them each in turn.

It doesn't say the same for virsh shutdown but it might be reasonable to
assume that this is a docs issue not a functionality one.

If that were the case then I think the below would do the trick, but as
I say I don't have an immediately convenient way to test, nor a need
since there are no such tests right now.

Ian.

diff --git a/Osstest/Toolstack/libvirt.pm b/Osstest/Toolstack/libvirt.pm
index 8bd7f4f..e7f4860 100644
--- a/Osstest/Toolstack/libvirt.pm
+++ b/Osstest/Toolstack/libvirt.pm
@@ -60,7 +60,11 @@ sub shutdown_wait ($$$) {
     my ($self,$gho,$timeout) = @_;
     my $ho = $self->{Host};
     my $gn = $gho->{Name};
-    target_cmd_root($ho, "virsh shutdown $gn", 30);
+    my $mode = "paravirt";
+    $mode .= ",acpi"
+       if guest_var($gho,'acpi_shutdown','false') eq 'true';
+
+    target_cmd_root($ho, "virsh shutdown --mode $mode $gn", 30);
     guest_await_destroy($gho,$timeout);
 }
 



_______________________________________________
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®.