[Qemu-devel] [PATCH v3 0/4] iothread: allow to create internal iothreads

Peter Xu posted 4 patches 6 years, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/1506401532-25274-1-git-send-email-peterx@redhat.com
Test checkpatch passed
Test docker passed
Test s390x passed
There is a newer version of this series
include/qom/object.h      | 10 ++++++++++
include/sysemu/iothread.h |  9 +++++++++
iothread.c                | 46 ++++++++++++++++++++++++++++++++++++----------
qom/object.c              | 11 +++++++++++
4 files changed, 66 insertions(+), 10 deletions(-)
[Qemu-devel] [PATCH v3 0/4] iothread: allow to create internal iothreads
Posted by Peter Xu 6 years, 6 months ago
v3:
- pick up r-bs (one missing for Fam's on last patch)
- fix patch 1 to create isolated internal container

v2:
- add one patch to provide object_get_internal_root() [Daniel]
- patch 2: use the new object_get_internal_root()
- patch 3: fix commit message, "reentrant" is wrongly used by me. it
  should be "called multiple times"; move iothread->ctx check into
  iothread_stop() [Fam]
- patch 4: add one paragraph in commit message, mention about the glib
  issue. [Fam]

When trying to support monitor OOB (out-of-band) commands, I found
that the monitor IO thread I did looks just like iothread.  It would
be best if I can use iothread directly.  However it seems that it was
mostly used by "-object iothread" before but not friendly to internal
usages.  This series tries to export essential functions to do it.

Also, I think patch 2 also fixes a bug in iothread_stop().

Please review. Thanks.

Peter Xu (4):
  qom: provide root container for internal objs
  iothread: provide helpers for internal use
  iothread: export iothread_stop()
  iothread: delay the context release to finalize

 include/qom/object.h      | 10 ++++++++++
 include/sysemu/iothread.h |  9 +++++++++
 iothread.c                | 46 ++++++++++++++++++++++++++++++++++++----------
 qom/object.c              | 11 +++++++++++
 4 files changed, 66 insertions(+), 10 deletions(-)

-- 
2.7.4