From: Paolo Bonzini <pbonzini@redhat.com>
To: qemu-devel@nongnu.org
Subject: [Qemu-devel] [PULL v3 00/13] allow tools to use the QEMU main loop
Date: Fri, 21 Oct 2011 18:26:32 +0200 [thread overview]
Message-ID: <1319214405-20388-1-git-send-email-pbonzini@redhat.com> (raw)
The following changes since commit c76eaf13975130768070ecd2d4f3107eb69ab757:
hw/9pfs: Fix broken compilation caused by wrong trace events (2011-10-20 15:30:59 -0500)
are available in the git repository at:
git://github.com/bonzini/qemu.git split-main-loop-for-anthony
This patch series makes the QEMU main loop usable out of the executable,
and especially in tools and possibly unit tests. This is cleaner because
it avoids introducing partial transitions to GIOChannel. Interfacing with
the glib main loop is still possible.
The main loop code is currently split in cpus.c and vl.c. Moving it
to a new file is easy; the problem is that the main loop depends on the
timer infrastructure in qemu-timer.c, and that file currently contains
the implementation of icount and the vm_clock. This is bad for the
perspective of linking qemu-timer.c into the tools. Luckily, it is
relatively easy to untie them and move them out of the way. This is
what the largest part of the series does (patches 1-9).
Patches 10-13 complete the refactoring and cleanup some surrounding
code.
v2->v3
Rebased, added documentation
v1->v2
Rebased
Paolo Bonzini (13):
remove unused function
qemu-timer: remove active_timers array
qemu-timer: move common code to qemu_rearm_alarm_timer
qemu-timer: more clock functions
qemu-timer: move icount to cpus.c
qemu-timer: do not refer to runstate_is_running()
qemu-timer: use atexit for quit_timers
qemu-timer: move more stuff out of qemu-timer.c
qemu-timer: do not use RunState change handlers
main-loop: create main-loop.h
main-loop: create main-loop.c
Revert to a hand-made select loop
simplify main loop functions
Makefile.objs | 2 +-
async.c | 1 +
cpus.c | 497 ++++++++++++++++++++++++++++---------------------
cpus.h | 3 +-
exec-all.h | 14 ++
exec.c | 3 -
hw/mac_dbdma.c | 5 -
hw/mac_dbdma.h | 1 -
iohandler.c | 55 +------
main-loop.c | 495 ++++++++++++++++++++++++++++++++++++++++++++++++
main-loop.h | 351 ++++++++++++++++++++++++++++++++++
os-win32.c | 123 ------------
qemu-char.h | 12 +-
qemu-common.h | 37 +----
qemu-coroutine-lock.c | 1 +
qemu-os-posix.h | 4 -
qemu-os-win32.h | 17 +--
qemu-timer.c | 489 +++++++++---------------------------------------
qemu-timer.h | 31 +---
savevm.c | 25 +++
slirp/libslirp.h | 11 -
sysemu.h | 3 +-
vl.c | 189 ++++---------------
23 files changed, 1309 insertions(+), 1060 deletions(-)
create mode 100644 main-loop.c
create mode 100644 main-loop.h
--
1.7.6
next reply other threads:[~2011-10-21 16:26 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-21 16:26 Paolo Bonzini [this message]
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 01/13] remove unused function Paolo Bonzini
2011-10-31 18:10 ` Anthony Liguori
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 02/13] qemu-timer: remove active_timers array Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 03/13] qemu-timer: move common code to qemu_rearm_alarm_timer Paolo Bonzini
2011-10-31 7:23 ` TeLeMan
2011-10-31 10:05 ` Paolo Bonzini
2011-10-31 17:13 ` Stefan Weil
2011-11-02 12:54 ` Paolo Bonzini
2011-11-02 13:31 ` Stefan Weil
2011-11-02 13:37 ` Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 04/13] qemu-timer: more clock functions Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 05/13] qemu-timer: move icount to cpus.c Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 06/13] qemu-timer: do not refer to runstate_is_running() Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 07/13] qemu-timer: use atexit for quit_timers Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 08/13] qemu-timer: move more stuff out of qemu-timer.c Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 09/13] qemu-timer: do not use RunState change handlers Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 10/13] main-loop: create main-loop.h Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 11/13] main-loop: create main-loop.c Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 12/13] Revert to a hand-made select loop Paolo Bonzini
2011-10-21 16:26 ` [Qemu-devel] [PATCH v3 13/13] simplify main loop functions Paolo Bonzini
2011-10-24 16:19 ` [Qemu-devel] [PULL v3 00/13] allow tools to use the QEMU main loop Anthony Liguori
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=1319214405-20388-1-git-send-email-pbonzini@redhat.com \
--to=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 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).