Stefan Hajnoczi <[email protected]> writes: > On Fri, Sep 22, 2017 at 04:56:10PM +0800, Peter Xu wrote: >> IOThread is a general framework that contains IO loop environment and a >> real thread behind. It's also good to be used internally inside qemu. >> Provide some helpers for it to create iothreads to be used internally. >> >> Signed-off-by: Peter Xu <[email protected]> >> --- >> include/sysemu/iothread.h | 8 ++++++++ >> iothread.c | 21 +++++++++++++++++++++ >> 2 files changed, 29 insertions(+) >> >> diff --git a/include/sysemu/iothread.h b/include/sysemu/iothread.h >> index d2985b3..b07663f 100644 >> --- a/include/sysemu/iothread.h >> +++ b/include/sysemu/iothread.h >> @@ -46,4 +46,12 @@ AioContext *iothread_get_aio_context(IOThread *iothread); >> void iothread_stop_all(void); >> GMainContext *iothread_get_g_main_context(IOThread *iothread); >> >> +/* >> + * Helpers used to allocate iothreads for internal use. These >> + * iothreads will not be seen by monitor clients when query using >> + * "query-iothreads". >> + */ >> +IOThread *iothread_create(const char *id, Error **errp); >> +void iothread_destroy(IOThread *iothread); >> + >> #endif /* IOTHREAD_H */ >> diff --git a/iothread.c b/iothread.c >> index 44c8944..74e400c 100644 >> --- a/iothread.c >> +++ b/iothread.c >> @@ -354,3 +354,24 @@ GMainContext *iothread_get_g_main_context(IOThread >> *iothread) >> >> return iothread->worker_context; >> } >> + >> +static Object *iothread_get_internal_parent(void) >> +{ >> + return container_get(object_get_root(), "/internal-iothreads"); >> +} > > Markus, please advise on the following QMP API design issue.
Sorry for the slow response. Is my advice still needed, or are you good?
