
On Thu, Jan 25, 2018 at 01:33:56PM +0100, Peter Krempa wrote:
On Thu, Jan 25, 2018 at 09:38:13 +0000, Daniel Berrange wrote:
The QEMU driver loadable module needs to be able to resolve all ELF symbols it references against libvirt.so. Some of its symbols can only be resolved against the storage_driver.so loadable module which creates a hard dependancy between them. By moving the storage file backend framework into the util directory, this gets included directly in the libvirt.so library. The actual backend implementations are still done as loadable modules, so this doesn't re-add deps on gluster libraries.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- po/POTFILES.in | 3 +- src/Makefile.am | 3 +- src/libvirt_private.syms | 19 + src/qemu/qemu_domain.c | 1 - src/qemu/qemu_driver.c | 1 - src/security/virt-aa-helper.c | 2 - src/storage/storage_backend_fs.c | 3 +- src/storage/storage_backend_gluster.c | 3 +- src/storage/storage_source.c | 645 --------------------- src/storage/storage_source.h | 59 -- src/util/virstoragefile.c | 609 ++++++++++++++++++- src/util/virstoragefile.h | 32 + .../virstoragefilebackend.c} | 4 +- .../virstoragefilebackend.h} | 8 +- tests/virstoragetest.c | 1 - 15 files changed, 669 insertions(+), 724 deletions(-) delete mode 100644 src/storage/storage_source.c delete mode 100644 src/storage/storage_source.h rename src/{storage/storage_source_backend.c => util/virstoragefilebackend.c} (96%) rename src/{storage/storage_source_backend.h => util/virstoragefilebackend.h} (94%)
[...]
diff --git a/src/storage/storage_source_backend.h b/src/util/virstoragefilebackend.h similarity index 94% rename from src/storage/storage_source_backend.h rename to src/util/virstoragefilebackend.h index 8288bebb1f..6cd51750ee 100644 --- a/src/storage/storage_source_backend.h +++ b/src/util/virstoragefilebackend.h @@ -1,5 +1,5 @@ /* - * storage_source_backend.h: internal storage source backend contract + * virstoragefilebackend.h: internal storage source backend contract * * Copyright (C) 2007-2018 Red Hat, Inc. * @@ -18,8 +18,8 @@ * <http://www.gnu.org/licenses/>. */
-#ifndef __VIR_STORAGE_SOURCE_BACKEND_H__ -# define __VIR_STORAGE_SOURCE_BACKEND_H__ +#ifndef __VIR_STORAGE_FILE_BACKEND_H__ +# define __VIR_STORAGE_FILE_BACKEND_H__
# include <sys/stat.h>
@@ -101,4 +101,4 @@ struct _virStorageFileBackend {
int virStorageFileBackendRegister(virStorageFileBackendPtr backend);
-#endif /* __VIR_STORAGE_BACKEND_H__ */ +#endif /* __VIR_STORAGE_FILE_BACKEND_H__ */
You've fixed it here, so you can disregard my previous comment.
Oh yes, but I meant to go back and fix the previous patch anyway just for sanity.
ACK
Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|