[Qemu-devel] [PATCH v4 0/5] iothread: allow to create internal iothreads

Peter Xu posted 5 patches 6 years, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170928025958.1420-1-peterx@redhat.com
Test checkpatch passed
Test docker passed
Test s390x passed
include/qom/object.h      | 11 +++++++++++
include/sysemu/iothread.h |  9 +++++++++
iothread.c                | 46 ++++++++++++++++++++++++++++++++++++----------
qom/object.c              | 11 +++++++++++
util/aio-posix.c          |  9 ++++++++-
5 files changed, 75 insertions(+), 11 deletions(-)
[Qemu-devel] [PATCH v4 0/5] iothread: allow to create internal iothreads
Posted by Peter Xu 6 years, 6 months ago
v4:
- fix comment in patch 1 [Fam, Stefan]
- add one more patch from Stefan to fix the aio glib warning

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

Stefan Hajnoczi (1):
  aio: fix assert when remove poll during destroy

 include/qom/object.h      | 11 +++++++++++
 include/sysemu/iothread.h |  9 +++++++++
 iothread.c                | 46 ++++++++++++++++++++++++++++++++++++----------
 qom/object.c              | 11 +++++++++++
 util/aio-posix.c          |  9 ++++++++-
 5 files changed, 75 insertions(+), 11 deletions(-)

-- 
2.13.5


Re: [Qemu-devel] [PATCH v4 0/5] iothread: allow to create internal iothreads
Posted by Stefan Hajnoczi 6 years, 6 months ago
On Thu, Sep 28, 2017 at 10:59:53AM +0800, Peter Xu wrote:
> v4:
> - fix comment in patch 1 [Fam, Stefan]
> - add one more patch from Stefan to fix the aio glib warning
> 
> 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
> 
> Stefan Hajnoczi (1):
>   aio: fix assert when remove poll during destroy
> 
>  include/qom/object.h      | 11 +++++++++++
>  include/sysemu/iothread.h |  9 +++++++++
>  iothread.c                | 46 ++++++++++++++++++++++++++++++++++++----------
>  qom/object.c              | 11 +++++++++++
>  util/aio-posix.c          |  9 ++++++++-
>  5 files changed, 75 insertions(+), 11 deletions(-)
> 
> -- 
> 2.13.5
> 

Thanks, applied to my block tree:
https://github.com/stefanha/qemu/commits/block

Stefan