The first round of my patches that breaks LXC driver into smaller pieces. With
my testing on 10 domains which are started up and destroyed in a loop with 10
iterations (each loop is run in a separate thread in client):
Before:
real 0m45.973s
user 0m0.080s
sys 0m0.020s
After:
real 0m14.951s
user 0m0.080s
sys 0m0.020s
Michal Privoznik (9):
qemu: Move close callbacks handling into util/virclosecallbacks.c
Introduce a virLXCDriverConfigPtr object
lxc: Use atomic ops for driver->nactive
Introduce annotations for virLXCDriverPtr fields
lxc: switch to virCloseCallbacks API
Stop accessing driver->caps directly in LXC driver
lxc: Make activeUsbHostdevs use locks
Remove lxcDriverLock from almost everywhere
Introduce lxcDomObjFromDomain
po/POTFILES.in | 1 +
src/Makefile.am | 4 +-
src/libvirt_private.syms | 8 +
src/lxc/lxc_conf.c | 120 ++++++--
src/lxc/lxc_conf.h | 64 ++--
src/lxc/lxc_controller.c | 2 +-
src/lxc/lxc_driver.c | 705 +++++++++++++++----------------------------
src/lxc/lxc_hostdev.c | 8 +
src/lxc/lxc_process.c | 181 ++++-------
src/lxc/lxc_process.h | 1 -
src/qemu/qemu_conf.c | 295 +-----------------
src/qemu/qemu_conf.h | 25 +-
src/qemu/qemu_driver.c | 4 +-
src/qemu/qemu_migration.c | 18 +-
src/qemu/qemu_migration.h | 2 +-
src/qemu/qemu_process.c | 14 +-
src/util/virclosecallbacks.c | 356 ++++++++++++++++++++++
src/util/virclosecallbacks.h | 56 ++++
18 files changed, 900 insertions(+), 964 deletions(-)
create mode 100644 src/util/virclosecallbacks.c
create mode 100644 src/util/virclosecallbacks.h
--
1.8.1.5