From: Paolo Bonzini <pbonzini@redhat.com>
To: Matthew Anderson <matthewa@base3.com.au>
Cc: Stefan Hajnoczi <stefanha@gmail.com>,
Xiexiangyou <xiexiangyou@huawei.com>,
'Alex Bligh' <alex@alex.org.uk>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] BUG: RTC issue when Windows guest is idle
Date: Mon, 28 Oct 2013 12:51:25 +0100 [thread overview]
Message-ID: <526E4FBD.1050705@redhat.com> (raw)
In-Reply-To: <08BFF9FD34CF37498327C2B6102BDD1E2000F272@Exchange2010-2.corit.local>
Il 28/10/2013 07:58, Matthew Anderson ha scritto:
> Hi Alex,
>
> I've been doing some testing with the latest git version and so far I haven't seen a guest freeze in the same circumstances as before.
>
> A weird thing that has been happening is the RTC timer stopping after a live migration. This happened in both 1.6.1 and the 1.6.50 git build. To replicate the issue I was migrating to/from the same machine and anywhere between 1 and 3 migrations the guest clock would stop. Connecting to the VNC console would not get it running again. I've tried to replicate the issue with the HPET enabled but the guest clock works flawlessly with it enabled.
Please try this:
(1) reproduce it with migration to file + restore from file
to save, from QEMU monitor:
migrate exec:cat>migr.ckp
to restore, from command line:
... -incoming 'exec:cat migr.ckp'
(2) If the RTC stops after restoring, compress migr.ckp and place it
somewhere I can download it.
Thanks,
Paolo
> Guest VM is Windows 2008R2. Host is Ubuntu 13.04 (kernel 3.8.0-25-generic)
> Command line -
> /usr/local/bin/qemu-system-x86_64 -enable-kvm -nodefconfig -nodefaults -daemonize -usb -chardev socket,id=charmonitor,path=/var/run/based1/monitor/525ce3d009c437d678000002.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -chardev socket,path=/var/run/based1/ga/525ce3d009c437d678000002.guestagent,server,nowait,id=qga0 -device virtio-serial -device virtserialport,chardev=qga0,name=org.qemu.guest_agent.0 -pidfile /var/run/based1/pid/525ce3d009c437d678000002.pid -vga cirrus -vnc 0.0.0.0:1 -M pc-i440fx-1.6 -m 1024 -smp sockets=1,cores=1,threads=1 -cpu qemu64,+vme,+dts,+acpi,+dtes64,+vmx,+smx,+ssse3,+sse4_1,+sse4_2,+tpr_shadow,+vnmi,+flexpriority,+ept,+vpid,hv_relaxed,hv_spinlocks=0xffff,hv_vapic -rtc base=utc,driftfix=slew --no-hpet -drive aio=native,file=rbd:sata/525ce3d009c437d678000003,if=virtio,id=disk-525ce3d009c437d678000005,format=raw,cache=writeback,media=disk,index=0,addr=0xa -netdev tap,id=netdev-5264b6d46e53c81719000236,vhost=off,ifname=tap2,script=no,dow
nscript=no -device virtio-net-pci,netdev=netdev-5264b6d46e53c81719000236,id=interface-5264b6d46e53c81719000236,mac=9a:a5:63:64:6f:76,bus=pci.0,addr=0xb -incoming tcp:0:3004
>
> Thanks
> -Matt
>
>
> -----Original Message-----
> From: Alex Bligh [mailto:alex@alex.org.uk]
> Sent: Tuesday, 22 October 2013 5:36 PM
> To: Xiexiangyou; Matthew Anderson
> Cc: Stefan Hajnoczi; qemu-devel@nongnu.org; Alex Bligh
> Subject: Re: [Qemu-devel] BUG: RTC issue when Windows guest is idle
>
>
>
> --On 22 October 2013 08:28:08 +0000 Xiexiangyou <xiexiangyou@huawei.com>
> wrote:
>
>> Hi:
>>
>> I have run windows2008r2 guest with qemu-1.5.1/1.6(I have not test the
>> the newer version) for long time, the issue (guest in hangup state)
>> will come out.When guest in hangup state, QEMU main thread is blocked
>> in g_poll loop.
>>> 398c398,399
>>> < uint32_t timeout = UINT32_MAX;
>>> ---
>>>> /* uint32_t timeout = UINT32_MAX; */
>>>> uint32_t timeout = 1000;
>>>
>> It seems can fix the problem, and rtc/hpet interrupt can inject into
>> guest again because of the "timeout", and guest will wake up . But
>> maybe the issue is also exist, because during the time before timeout
>> , guest also will lose rtc/hpet ticks.
>
> I do not think that is the correct fix for 1.5.1/1.6; what you are basically doing is limiting the wait in the mainloop to one second (1.5.1/1.6 are in milliseconds); however, I believe there may be other code that looks for infinite timeouts. Either there is some other bug that this is masking (in which case it may or may not be fixed in master / 1.7), or its a bug in the timer stuff in 1.5.1/1.6 (which would not surprise me) which is likely to have been fixed in master / 1.7.
>
> --
> Alex Bligh
>
>
next prev parent reply other threads:[~2013-10-28 11:51 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-08 9:38 [Qemu-devel] BUG: RTC issue when Windows guest is idle Xiexiangyou
2013-10-16 14:56 ` Matthew Anderson
2013-10-21 14:56 ` Alex Bligh
2013-10-21 15:13 ` Alex Bligh
2013-10-22 8:28 ` Xiexiangyou
2013-10-22 9:35 ` Alex Bligh
2013-10-28 6:58 ` Matthew Anderson
2013-10-28 7:44 ` Alex Bligh
2013-10-28 8:46 ` Alex Bligh
2013-10-30 0:44 ` Xiexiangyou
2013-10-30 7:23 ` Alex Bligh
2013-10-28 11:51 ` Paolo Bonzini [this message]
2013-10-30 1:29 ` Xiexiangyou
2013-10-30 7:26 ` Alex Bligh
[not found] <5C390CF7F373CC4AB58A6684FF6C8712013DD0E2@Exchange2010-2.corit.local>
[not found] ` <20130221222246.GH10005@vm>
2013-03-14 4:15 ` Matthew Anderson
2013-03-19 17:53 ` Gleb Natapov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=526E4FBD.1050705@redhat.com \
--to=pbonzini@redhat.com \
--cc=alex@alex.org.uk \
--cc=matthewa@base3.com.au \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
--cc=xiexiangyou@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).