From: Jan Kiszka <jan.kiszka@siemens.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: Kevin Wolf <kwolf@redhat.com>,
Anthony Liguori <aliguori@us.ibm.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH 0/5] Spread the use of QEMU threading & locking API
Date: Wed, 04 Apr 2012 19:19:52 +0200 [thread overview]
Message-ID: <4F7C82B8.8090602@siemens.com> (raw)
In-Reply-To: <4F7C7D11.3040302@siemens.com>
On 2012-04-04 18:55, Jan Kiszka wrote:
> On 2012-04-04 18:39, Paolo Bonzini wrote:
>> Il 04/04/2012 18:05, Jan Kiszka ha scritto:
>>>>> Perhaps you can take the relevant patches out of the thread-blocks
>>>>> branch at git://github.com/pbonzini/qemu.git? The iothread eventfd
>>>>> could also use an EventNotifier.
>>> Yep, this screams for something like QemuEvent which pleases all users
>>> of current qemu_eventfd and EventNotifier - and fit into the existing
>>> threading/synchronization abstraction layout.
>>
>> Kind of, on Unix you cannot poll synchronization primitives so
Ah, you meant on Win32 you cannot poll!
>> EventNotifier has to remain separate from qemu-thread.
>
> QemuEvent will be pollable as you can ask it for its read fd:
>
> void qemu_event_init(QemuEvent *event, bool signaled);
> void qemu_event_destroy(QemuEvent *event);
> int qemu_event_get_write_fd(QemuEvent *event);
> int qemu_event_get_read_fd(QemuEvent *event);
> void qemu_event_signal(QemuEvent *event);
> bool qemu_event_check(QemuEvent *event);
>
> I'm not yet convinced a qemu_event_set_handler buys us a lot, so I
> prefer the get_read_fd interface for now.
I'm starting to understand your abstraction here - makes sense. :)
Jan
--
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux
next prev parent reply other threads:[~2012-04-04 17:20 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-04 15:08 [Qemu-devel] [PATCH 0/5] Spread the use of QEMU threading & locking API Jan Kiszka
2012-04-04 15:08 ` [Qemu-devel] [PATCH 1/5] Introduce qemu_cond_timedwait for POSIX Jan Kiszka
2012-04-04 15:08 ` [Qemu-devel] [PATCH 2/5] Switch POSIX compat AIO to QEMU abstractions Jan Kiszka
2012-04-04 15:08 ` [Qemu-devel] [PATCH 3/5] Use qemu_eventfd for POSIX AIO Jan Kiszka
2012-04-04 15:08 ` [Qemu-devel] [PATCH 4/5] Reorder POSIX compat AIO code Jan Kiszka
2012-04-04 15:08 ` [Qemu-devel] [PATCH 5/5] Switch compatfd to QEMU thread Jan Kiszka
2012-04-04 15:18 ` [Qemu-devel] [PATCH 0/5] Spread the use of QEMU threading & locking API Paolo Bonzini
2012-04-04 15:24 ` Jan Kiszka
2012-04-04 15:29 ` Paolo Bonzini
2012-04-04 15:38 ` Jan Kiszka
2012-04-04 15:43 ` Jan Kiszka
2012-04-04 16:05 ` Jan Kiszka
2012-04-04 16:39 ` Paolo Bonzini
2012-04-04 16:55 ` Jan Kiszka
2012-04-04 17:19 ` Jan Kiszka [this message]
2012-04-05 7:51 ` Paolo Bonzini
2012-04-05 10:55 ` Jan Kiszka
2012-04-05 11:07 ` Paolo Bonzini
2012-04-05 11:18 ` Jan Kiszka
2012-04-05 11:29 ` Paolo Bonzini
2012-04-05 12:04 ` Jan Kiszka
2012-04-05 12:48 ` Paolo Bonzini
[not found] ` <4F7D977A.1020905@siemens.com>
2012-04-05 13:40 ` Paolo Bonzini
2012-04-05 14:01 ` Jan Kiszka
2012-04-05 14:11 ` Paolo Bonzini
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=4F7C82B8.8090602@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=aliguori@us.ibm.com \
--cc=kwolf@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/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.