[libvirt] A libvirt issue about S3 , please help have a look, thanks

Martin Kletzander mkletzan at redhat.com
Fri Dec 13 13:06:56 UTC 2013


On Fri, Dec 13, 2013 at 07:16:22AM -0500, Zhenfeng Wang wrote:
> Hi
> I met a issue that while shutdown/reboot a guest which was in pmsuspended status with the acpi mode,
> the virsh command appears executed successfully, actually, the guest keep in pmsuspended status and
> it didn't shutoff the guest.Then I did the upper operation on my physical host, find the host will
> be waked up from the pmsuspended stuatus while i type the shutdown button , so maybe that's the expect
> result that the guest can't be shutdown successfully in pmsuspended status. So I think it should report
> a proper error or wake up the guest while we shutdown a guest which was in pmsuspended status. Since i'm
> not sure about this issue, so i hope you give me some advise to decide that whether we have necessary to
> track this issue, thanks.
>
> pkginfo
> kernel-3.6.10-4.fc18.x86_64
> libvirt-1.1.4-2.fc21.x86_64
> qemu-1.4.0-5.fc20.x86_64
>
> steps
> 1.Prepare a running guest
> # virsh list --all
>  Id    Name                           State
> ----------------------------------------------------
>  6     rhel7                          running
>
> # vrish dumpxml rhel7
> --
>   <pm>
>     <suspend-to-mem enabled='yes'/>
>     <suspend-to-disk enabled='yes'/>
>   </pm>
>
> --
>     <channel type='unix'>
>       <source mode='bind' path='/var/lib/libvirt/qemu/rhel7.agent'/>
>       <target type='virtio' name='org.qemu.guest_agent.0'/>
>       <alias name='channel1'/>
>       <address type='virtio-serial' controller='0' bus='0' port='1'/>
>     </channel>
>
> 2.Install the qemu-guest-agent packet in the guest, then start the qemu-guest-agent service
> #systemctl start qemu-guest-agent
>
> 3.Do the S3 with the guest
> # virsh dompmsuspend rhel7 --target mem
> Domain rhel7 successfully suspended
> # virsh list
>  Id    Name                           State
> ----------------------------------------------------
>  30    rhel7                          pmsuspended
>

This looks ok, I guess the guest is properly pm-suspended, right?

>
>
> 4.Shutdown the guest with acpi, The command also appears executed successfully, actually, it didn't shutoff the guest
> I think it shoud report error here if the guest can't be shutdown successfully.
>
> # virsh shutdown rhel7 --mode acpi
> Domain rhel7 is being shutdown
>
> # echo $?
> 0

I suspect you did this *after* you pmsuspended the guest, right?

> # virsh list
>  Id    Name                           State
> ----------------------------------------------------
>  30    rhel7                          pmsuspended
>
> Check the libvirtd's log, we can see the following log
> 2013-12-13 10:11:46.004+0000: 25134: debug : qemuMonitorJSONIOProcessLine:175 : QEMU_MONITOR_RECV_REPLY: mon=0x7f824800c190 reply={"return": {}, "id": "libvirt-9"}
> 2013-12-13 10:11:46.004+0000: 25134: debug : qemuMonitorJSONIOProcessLine:155 : Line [{"timestamp": {"seconds": 1386929506, "microseconds": 3807}, "event": "POWERDOWN"}]
> 2013-12-13 10:11:46.004+0000: 25134: debug : virJSONValueFromString:975 : string={"timestamp": {"seconds": 1386929506, "microseconds": 3807}, "event": "POWERDOWN"}
> 2013-12-13 10:11:46.005+0000: 25134: debug : qemuMonitorJSONIOProcessLine:170 : QEMU_MONITOR_RECV_EVENT: mon=0x7f824800c190 event={"timestamp": {"seconds": 1386929506, "microseconds": 3807}, "event": "POWERDOWN"}
>

If my presumptions are true than I must say this works as expected.
Let me explain.  The thing is that if you issue shutdown --mode acpi,
it does the same thing as pressing a hardware poweroff button.  Apart
from the fact that it only means shutdown and it won't start the
domain back.  But that doesn't matter.  You are sending ACPI event to
a domain which is not running, thus it cannot respond to your request.

Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20131213/5a278017/attachment-0001.sig>


More information about the libvir-list mailing list