qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Priebe <s.priebe@profihost.ag>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-devel <qemu-devel@nongnu.org>,
	Alexandre DERUMIER <aderumier@odiso.com>,
	Juan Quintela <quintela@redhat.com>
Subject: Re: [Qemu-devel] setting migrate_downtime results in halted vm (qemu 1.3)
Date: Mon, 31 Dec 2012 14:25:26 +0100	[thread overview]
Message-ID: <50E19246.1050706@profihost.ag> (raw)
In-Reply-To: <50DF0B54.5020102@redhat.com>

When i try to cancel a running migration with qemu git i get a segfault.

BT:
(gdb) bt
#0  _wordcopy_bwd_aligned (dstp=140051233112024, srcp=140051233112016, 
len=529920) at wordcopy.c:298
#1  0x00007f61dd7c86da in *__GI_memmove (dest=0x7f6037bf5010, 
src=<optimized out>, len=38118264) at memmove.c:99
#2  0x00007f61e2e973c9 in buffered_flush (s=0x7f61e33a9e60) at 
migration.c:546
#3  0x00007f61e2e9746c in buffered_close (opaque=0x7f61e33a9e60) at 
migration.c:598
#4  0x00007f61e2f758ff in qemu_fclose (f=0x7f6044fc3200)
     at 
/opt/debianpackages/pve-squeeze.sources/pve-qemu-kvm/qemu-kvm/savevm.c:543
#5  0x00007f61e2e975b6 in migrate_fd_cleanup (s=0x7f61e33a9e60) at 
migration.c:277
#6  0x00007f61e2f7406b in handle_user_command (mon=0x7fffce7e3a90, 
cmdline=<optimized out>)
     at 
/opt/debianpackages/pve-squeeze.sources/pve-qemu-kvm/qemu-kvm/monitor.c:3945
#7  0x00007f61e2f74279 in qmp_human_monitor_command 
(command_line=0x7f604c9361b0 "migrate_cancel", has_cpu_index=false,
     cpu_index=140051576672336, errp=0x7fffce7e3f68) at 
/opt/debianpackages/pve-squeeze.sources/pve-qemu-kvm/qemu-kvm/monitor.c:664
#8  0x00007f61e2ecec07 in qmp_marshal_input_human_monitor_command 
(mon=<optimized out>, qdict=<optimized out>, ret=0x7fffce7e3ff0)
     at qmp-marshal.c:1505
#9  0x00007f61e2f6f53f in qmp_call_cmd (params=<optimized out>, 
cmd=<optimized out>, mon=<optimized out>)
     at 
/opt/debianpackages/pve-squeeze.sources/pve-qemu-kvm/qemu-kvm/monitor.c:4446
#10 handle_qmp_command (parser=<optimized out>, tokens=<optimized out>)
     at 
/opt/debianpackages/pve-squeeze.sources/pve-qemu-kvm/qemu-kvm/monitor.c:4512
#11 0x00007f61e2e9039c in json_message_process_token 
(lexer=0x7f61d0012470, token=0x7f60389d6c60, type=JSON_OPERATOR,
     x=<optimized out>, y=<optimized out>) at json-streamer.c:87
#12 0x00007f61e2e8ec60 in json_lexer_feed_char (lexer=0x7f61d0012470, 
ch=125 '}', flush=false) at json-lexer.c:303
#13 0x00007f61e2e8ee19 in json_lexer_feed (lexer=0x7f61d0012470, 
buffer=0x7fffce7e41f0 "}\277\370M`\177", size=1)
     at json-lexer.c:356
#14 0x00007f61e2f6d65e in monitor_control_read (opaque=<optimized out>, 
buf=0x7f6040000000 " ", size=529920)
     at 
/opt/debianpackages/pve-squeeze.sources/pve-qemu-kvm/qemu-kvm/monitor.c:4533
#15 0x00007f61e2ebedab in tcp_chr_read (opaque=0x7f61e4e1e610) at 
qemu-char.c:2325
#16 0x00007f61e2e8dac7 in qemu_iohandler_poll (readfds=0x7f61e37bc660, 
writefds=0x7f61e37bc6e0, xfds=<optimized out>,
     ret=<optimized out>) at iohandler.c:124
#17 0x00007f61e2e95f79 in main_loop_wait (nonblocking=<optimized out>) 
at main-loop.c:418
#18 0x00007f61e2f0f56c in main_loop () at vl.c:1768
#19 main (argc=<optimized out>, argv=<optimized out>, envp=<optimized 
out>) at vl.c:4047

Stefan

Am 29.12.2012 16:25, schrieb Paolo Bonzini:
> Il 29/12/2012 16:19, Stefan Priebe ha scritto:
>>>
>>>
>>> I suppose it will be between 05e72dc5812a9f461fc2c606dff2572909eafc39
>>> and aa723c23147e93fef8475bd80fd29e633378c34d.
>>>
>>> Probably at 2dddf6f4133975af62e64cb6406ec1239491fa89, which was supposed
>>> to be placed before switching to the migration thread (or even squashed
>>> in it) but ended up much earlier when the project moved from me to Juan.
>>
>> You mean by bisecting between qemu 1.2 and 1.3? I retested qemu 1.2 and
>> it wasn't 100% working for me there too. It worked fine until
>> migrate_downtime 1s it breaks / vm just halts when i set it to 2s with
>> qemu 1.2. So i don't really know where to start bisecting. As i have NO
>> version where it worked perfectly. Except Qemu 1.3 with the patches
>> backported from 1.4 this works fine.
>
> Bisect between the two commits I gave above.  There probably will a
> place when it starts failing reliably.
>
> Paolo
>

      reply	other threads:[~2012-12-31 13:25 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-27 21:54 [Qemu-devel] setting migrate_downtime results in halted vm Stefan Priebe
2012-12-28  7:05 ` [Qemu-devel] setting migrate_downtime results in halted vm (qemu 1.3) Alexandre DERUMIER
2012-12-28 17:53   ` Paolo Bonzini
2012-12-28 19:03     ` Stefan Priebe
2012-12-29 14:00       ` Paolo Bonzini
2012-12-29 14:05         ` Stefan Priebe
2012-12-29 14:58           ` Paolo Bonzini
2012-12-29 15:19             ` Stefan Priebe
2012-12-29 15:25               ` Paolo Bonzini
2012-12-31 13:25                 ` Stefan Priebe [this message]

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=50E19246.1050706@profihost.ag \
    --to=s.priebe@profihost.ag \
    --cc=aderumier@odiso.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.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).