[libvirt] [PATCH v2 RFC 0/4] qemu: replace nested job with interruptible async job state

Nikolay Shirokovskiy nshirokovskiy at virtuozzo.com
Thu May 25 12:28:15 UTC 2017


ping

On 02.05.2017 13:06, Nikolay Shirokovskiy wrote:
> This is the next version of RFC [1] 'drop nested job concept'. Actually
> it is quite different from the first. Patches that accomodate callers to
> use functions to enter/exit monitor with without driver and asyncJob arguments
> are moved out of this series. I guess this can be done as soon as this series
> is upstream. Most of approach details are in the first patch.
> 
> Pros:
> - better async job and concurrent regular job isolation
> - more straightforward implementation
> - more simple to use - no need to pass async job argument down the stack
> - safer to use - no warnings to be fixed if function is started to be
>   used from asynchronous job context.
> 
> TODO:
> - replace qemuDomainObjEnterMonitorAsync with qemuDomainObjEnterMonitor
> - accomodate callers to qemuDomainObjExitMonitor became returning void
> - remove passing driver and asyncJob down the stack
> - reflect changes in THREADS.txt
> 
> 
> [1] https://www.redhat.com/archives/libvir-list/2016-November/msg01357.html
> 
> Nikolay Shirokovskiy (4):
>   qemu: replace nested job with interruptible async job state
>   qemu: remove liveness check from qemuDomainObjExitMonitor
>   qemu: remove nesting job usage from qemuProcessStop
>   qemu: remove the rest of nested job parts
> 
>  src/conf/domain_conf.c    |  19 ----
>  src/conf/domain_conf.h    |   1 -
>  src/libvirt_private.syms  |   1 -
>  src/qemu/qemu_domain.c    | 253 +++++++++++++++++++++++++++++-----------------
>  src/qemu/qemu_domain.h    |  29 ++++--
>  src/qemu/qemu_driver.c    |   2 +-
>  src/qemu/qemu_migration.c |  70 +++++++------
>  src/qemu/qemu_process.c   |  31 ++----
>  8 files changed, 225 insertions(+), 181 deletions(-)
> 




More information about the libvir-list mailing list