From 6a841c0cd1532f6e2e04c2fbb674ee3f69c714b7 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Thu, 4 Jun 2015 13:57:48 +0200 Subject: [PATCH] core: avoid loading GIO modules Turns out the dconf modules is leaky and breaks the valgrind run. In any case, it's not a good idea to load the modules for the daemon, it just takes time and memory. On a Fedora/x86_64 desktop it adds up to 5M to the RSS. --- include/nm-test-utils.h | 5 +++++ src/main-utils.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/include/nm-test-utils.h b/include/nm-test-utils.h index d666366098..c14d6eca02 100644 --- a/include/nm-test-utils.h +++ b/include/nm-test-utils.h @@ -439,6 +439,11 @@ __nmtst_init (int *argc, char ***argv, gboolean assert_logging, const char *log_ /* ensure that monotonic timestamp is called (because it initially logs a line) */ nm_utils_get_monotonic_timestamp_s (); #endif + + /* Avoid loading the VFS modules we don't use in the daemon. + * See: src/main-utils.c:nm_main_utils_early_setup() */ + setenv ("GIO_USE_VFS", "local", 1); + setenv ("GIO_MODULE_DIR", "", 1); } #ifdef __NETWORKMANAGER_LOGGING_H__ diff --git a/src/main-utils.c b/src/main-utils.c index 5378ca97a1..6e649e7fbb 100644 --- a/src/main-utils.c +++ b/src/main-utils.c @@ -205,6 +205,9 @@ nm_main_utils_early_setup (const char *progname, * talking on the session bus. See rh #588745 */ setenv ("GIO_USE_VFS", "local", 1); + /* Don't load GIO modules. We just want to load plain files and the + * modules would just take extra memory. */ + setenv ("GIO_MODULE_DIR", "", 1); /* * Set the umask to 0022, which results in 0666 & ~0022 = 0644.