The storage driver backends currently register storage file backends as a side effect of initialization. This is fine right now while both run in the same libvirtd process, but in future the storage file backends will need to run in the hypervisor daemon which will be separate from the storage daemon. This small series splits them, makin the storage file backends be registered "on demand" Daniel P. Berrangé (6): util: create new virmodule.{c,h} files for dlopen support code storage: split gluster storage file code from storage driver backend storage: split fs storage file code from storage driver backend storage: fix virStorageFileGetBackingStoreStr error handling util: refactor storage file checks to allow error reporting storage: create separate loadable modules for storage file drivers libvirt.spec.in | 4 + src/driver.c | 133 +----------- src/driver.h | 3 - src/libvirt_driver_modules.syms | 1 - src/libvirt_private.syms | 3 + src/qemu/qemu_domain.c | 21 +- src/qemu/qemu_driver.c | 21 +- src/storage/Makefile.inc.am | 44 ++++ src/storage/storage_backend.c | 3 +- src/storage/storage_backend_fs.c | 210 +------------------ src/storage/storage_backend_gluster.c | 305 +--------------------------- src/storage/storage_backend_gluster.h | 2 +- src/storage/storage_file_fs.c | 251 +++++++++++++++++++++++ src/storage/storage_file_fs.h | 29 +++ src/storage/storage_file_gluster.c | 366 ++++++++++++++++++++++++++++++++++ src/storage/storage_file_gluster.h | 27 +++ src/util/Makefile.inc.am | 2 + src/util/virmodule.c | 163 +++++++++++++++ src/util/virmodule.h | 29 +++ src/util/virstoragefile.c | 123 ++++++++---- src/util/virstoragefile.h | 9 +- src/util/virstoragefilebackend.c | 72 +++++-- src/util/virstoragefilebackend.h | 9 +- 23 files changed, 1098 insertions(+), 732 deletions(-) create mode 100644 src/storage/storage_file_fs.c create mode 100644 src/storage/storage_file_fs.h create mode 100644 src/storage/storage_file_gluster.c create mode 100644 src/storage/storage_file_gluster.h create mode 100644 src/util/virmodule.c create mode 100644 src/util/virmodule.h -- 2.14.3 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list