9ce44e2ce2
This moves the QMP dispatcher to a coroutine and runs all QMP command handlers that declare 'coroutine': true in coroutine context so they can avoid blocking the main loop while doing I/O or waiting for other events. For commands that are not declared safe to run in a coroutine, the dispatcher drops out of coroutine context by calling the QMP command handler from a bottom half. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20201005155855.256490-10-kwolf@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com> |
||
---|---|---|
.. | ||
qmp | ||
clone-visitor.h | ||
dealloc-visitor.h | ||
error.h | ||
opts-visitor.h | ||
qmp-event.h | ||
qobject-input-visitor.h | ||
qobject-output-visitor.h | ||
string-input-visitor.h | ||
string-output-visitor.h | ||
util.h | ||
visitor-impl.h | ||
visitor.h |