From: Peter Lieven <pl@kamp.de>
To: Paolo Bonzini <pbonzini@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>, qemu-stable@nongnu.org
Subject: Re: [Qemu-devel] [Qemu-stable] Recent patches for 2.4
Date: Tue, 04 Aug 2015 13:57:01 +0200 [thread overview]
Message-ID: <55C0A88D.1010800@kamp.de> (raw)
In-Reply-To: <55C0A7AA.70609@redhat.com>
Am 04.08.2015 um 13:53 schrieb Paolo Bonzini:
>
> On 04/08/2015 11:22, Peter Lieven wrote:
>>>>>> edec47c main-loop: fix qemu_notify_event for aio_notify optimization
>>>>> Part of the above AioContext series.
>>>> So either the whole series or none of them I guess?
>>> It's a separate bug, and theoretically it's there in 2.3.1 as well, but
>>> no one ever reproduced it (it would hang in make check) so not
>>> worthwhile.
>> Can you give me a pointer what the symtoms where?
> If a thread tries to wake up the main thread using qemu_notify_event(),
> the main thread will never wake up. This for example could happen if
> the first thread calls qemu_set_fd_handler() or timer_mod().
>
>> I have a qemu-img convert job on x86_64 that reproducibly hangs on
>> bdrv_drain_all at the end of the convert process.
>> I convert from nfs:// to local storage here. I try to figure out which BS
>> reports busy. Qemu here is still 2.2.1.
> qemu-img does not use main-loop, so this cannot be the cause.
>
> The AioContext bugs only happen when you have a thread executing the
> main loop and one thread executing aio_poll, so they can also be
> excluded as the cause of qemu-img problems.
Okay, what I found out is that in aio_poll I get revents = POLLIN for
the nfs file descriptor. But there is no data available on the socket.
But as a consequence progress is true and we loop here forever.
I have seen that is a common bug in Linux to return POLLIN on a fd
even there is no data available. I don't have this problem in general,
in this case no qemu-img or qemu process would ever terminate when
nfs is involved, but in this special case it happens reproducible.
Peter
next prev parent reply other threads:[~2015-08-04 11:57 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-31 8:12 [Qemu-devel] Recent patches for 2.4 Peter Lieven
2015-07-31 8:22 ` Paolo Bonzini
2015-07-31 8:35 ` Peter Lieven
2015-07-31 9:29 ` Paolo Bonzini
2015-08-04 9:22 ` [Qemu-devel] [Qemu-stable] " Peter Lieven
2015-08-04 11:53 ` Paolo Bonzini
2015-08-04 11:57 ` Peter Lieven [this message]
2015-08-04 12:09 ` Paolo Bonzini
2015-08-04 12:29 ` Peter Lieven
2015-08-04 12:53 ` Peter Lieven
2015-08-04 23:23 ` ronnie sahlberg
2015-08-05 8:39 ` Paolo Bonzini
2015-08-06 7:51 ` Peter Lieven
2015-09-03 13:11 ` Peter Lieven
2015-09-07 16:28 ` Paolo Bonzini
2015-09-07 19:11 ` Peter Lieven
2015-09-07 19:14 ` Paolo Bonzini
2015-09-07 21:05 ` Peter Lieven
2015-09-21 7:40 ` Peter Lieven
2015-09-21 9:41 ` Paolo Bonzini
2015-09-21 9:52 ` Peter Lieven
2015-09-21 12:16 ` Paolo Bonzini
2015-08-04 18:20 ` Michael Roth
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=55C0A88D.1010800@kamp.de \
--to=pl@kamp.de \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@nongnu.org \
--cc=stefanha@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.