Message ID | 1319214405-20388-1-git-send-email-pbonzini@redhat.com |
---|---|
State | New |
Headers | show |
On 10/21/2011 11:26 AM, Paolo Bonzini wrote: > 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 Pulled. Thanks. Regards, Anthony Liguori > 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 >