Explicitly call virJSONInitialize at startup of the libvirt daemon so that we are sure that the symbols in the compat library are properly loaded. This will prevent any random failure from happening later on when the daemon would want to use the JSON parser. Signed-off-by: Peter Krempa <pkrempa@xxxxxxxxxx> --- src/libvirt_private.syms | 4 ++++ src/remote/remote_daemon.c | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index fc386e1699..70dfcc5e29 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -2135,6 +2135,10 @@ virJSONValueObjectStealObject; virJSONValueToString; +# util/virjsoncompat.h +virJSONInitialize; + + # util/virkeycode.h virKeycodeSetTypeFromString; virKeycodeSetTypeToString; diff --git a/src/remote/remote_daemon.c b/src/remote/remote_daemon.c index 9f3a5f38ad..8bbc3818bb 100644 --- a/src/remote/remote_daemon.c +++ b/src/remote/remote_daemon.c @@ -59,6 +59,7 @@ #include "virutil.h" #include "virgettext.h" #include "util/virnetdevopenvswitch.h" +#include "virjsoncompat.h" #include "driver.h" @@ -1183,6 +1184,9 @@ int main(int argc, char **argv) { exit(EXIT_FAILURE); } + if (virJSONInitialize() < 0) + exit(EXIT_FAILURE); + daemonSetupNetDevOpenvswitch(config); if (daemonSetupAccessManager(config) < 0) { -- 2.16.2 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list