summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2019-07-11 17:15:29 +0200
committerThomas Haller <thaller@redhat.com>2019-07-16 19:09:08 +0200
commita169268eb70bf4267caa42601e4bc363b5421b68 (patch)
tree92d62bf885bd258cfd25230d2f7e7760c43cdbfa
parentd35d3c468a304c3e0e78b4b068d105b1d753876c (diff)
downloadNetworkManager-th/settings-delegate-storage.tar.gz
Some printf debugging to find a crash...
-rw-r--r--src/settings/nm-settings-plugin.c6
-rw-r--r--src/settings/nm-settings-storage.c5
-rw-r--r--src/settings/nm-settings-storage.h1
-rw-r--r--src/settings/nm-settings-utils.c10
-rw-r--r--src/settings/nm-settings.c9
-rw-r--r--src/settings/plugins/keyfile/nms-keyfile-plugin.c10
-rw-r--r--src/settings/plugins/keyfile/nms-keyfile-storage.c5
7 files changed, 46 insertions, 0 deletions
diff --git a/src/settings/nm-settings-plugin.c b/src/settings/nm-settings-plugin.c
index 8ae1e6528a..9d8c4d0181 100644
--- a/src/settings/nm-settings-plugin.c
+++ b/src/settings/nm-settings-plugin.c
@@ -78,9 +78,11 @@ nm_settings_plugin_reload_connections (NMSettingsPlugin *self,
g_return_if_fail (NM_IS_SETTINGS_PLUGIN (self));
g_return_if_fail (callback);
+ nm_log_dbg (LOGD_CORE, ">>> reload-connection() start... // %s", G_OBJECT_TYPE_NAME (self));
klass = NM_SETTINGS_PLUGIN_GET_CLASS (self);
if (klass->reload_connections)
klass->reload_connections (self, callback, user_data);
+ nm_log_dbg (LOGD_CORE, ">>> reload-connection() done...");
}
NMSettingsPluginConnectionLoadEntry *
@@ -121,9 +123,13 @@ nm_settings_plugin_load_connections (NMSettingsPlugin *self,
g_return_if_fail (NM_IS_SETTINGS_PLUGIN (self));
+ nm_log_dbg (LOGD_CORE, ">>> load-connections() start... // %s", G_OBJECT_TYPE_NAME (self));
+
klass = NM_SETTINGS_PLUGIN_GET_CLASS (self);
if (klass->load_connections)
klass->load_connections (self, entries, n_entries, callback, user_data);
+
+ nm_log_dbg (LOGD_CORE, ">>> load-connections() done");
}
void
diff --git a/src/settings/nm-settings-storage.c b/src/settings/nm-settings-storage.c
index c5942c6e02..c6bab1cf80 100644
--- a/src/settings/nm-settings-storage.c
+++ b/src/settings/nm-settings-storage.c
@@ -132,6 +132,9 @@ nm_settings_storage_init (NMSettingsStorage *self)
{
c_list_init (&self->_storage_lst);
c_list_init (&self->_storage_by_uuid_lst);
+
+ g_snprintf (self->_str, sizeof (self->_str), NM_HASH_OBFUSCATE_PTR_FMT, NM_HASH_OBFUSCATE_PTR (self));
+ nm_log_dbg (LOGD_CORE, ">>> create storage %s", self->_str);
}
NMSettingsStorage *
@@ -157,6 +160,8 @@ finalize (GObject *object)
c_list_unlink_stale (&self->_storage_lst);
c_list_unlink_stale (&self->_storage_by_uuid_lst);
+ nm_log_dbg (LOGD_CORE, ">>> destroy storage %s // "NM_HASH_OBFUSCATE_PTR_FMT, nm_settings_storage_get_uuid_opt (self), NM_HASH_OBFUSCATE_PTR (self));
+
g_object_unref (self->_plugin);
g_free (self->_uuid);
g_free (self->_filename);
diff --git a/src/settings/nm-settings-storage.h b/src/settings/nm-settings-storage.h
index c43145b5af..eb5f732402 100644
--- a/src/settings/nm-settings-storage.h
+++ b/src/settings/nm-settings-storage.h
@@ -44,6 +44,7 @@ typedef struct NMSettingsStorage {
char *_filename;
CList _storage_lst;
CList _storage_by_uuid_lst;
+ char _str[20];
} NMSettingsStorage;
typedef struct {
diff --git a/src/settings/nm-settings-utils.c b/src/settings/nm-settings-utils.c
index 0d636537b6..68ab8c7eb9 100644
--- a/src/settings/nm-settings-utils.c
+++ b/src/settings/nm-settings-utils.c
@@ -96,9 +96,11 @@ nm_sett_util_storage_by_uuid_head_destroy (NMSettUtilStorageByUuidHead *sbuh)
void
nm_sett_util_storages_clear (NMSettUtilStorages *storages)
{
+ nm_log_dbg (LOGD_CORE, ">>> storage clear start...");
nm_clear_pointer (&storages->idx_by_uuid, g_hash_table_destroy);
nm_clear_pointer (&storages->idx_by_filename, g_hash_table_destroy);
nm_assert (c_list_is_empty (&storages->_storage_lst_head));
+ nm_log_dbg (LOGD_CORE, ">>> storage clear done...");
}
void
@@ -136,6 +138,10 @@ nm_sett_util_storages_add_take (NMSettUtilStorages *storages,
}
c_list_link_tail (&storages->_storage_lst_head, &storage_take->_storage_lst);
+
+ nm_log_dbg (LOGD_CORE, ">>> link storage (%s) // "NM_HASH_OBFUSCATE_PTR_FMT" (all-len=%zu, uuid-len=%zu)", nm_settings_storage_get_uuid_opt (storage_take), NM_HASH_OBFUSCATE_PTR (storage_take),
+ c_list_length (&storage_take->_storage_lst),
+ c_list_length (&storage_take->_storage_by_uuid_lst));
}
gpointer /* NMSettingsStorage * */
@@ -171,5 +177,9 @@ nm_sett_util_storages_steal (NMSettUtilStorages *storages,
g_hash_table_steal (storages->idx_by_filename, nm_settings_storage_get_filename (storage));
+ nm_log_dbg (LOGD_CORE, ">>> steal storage (%s) // "NM_HASH_OBFUSCATE_PTR_FMT" (all-len=%zu, uuid-len=%zu)", nm_settings_storage_get_uuid_opt (storage), NM_HASH_OBFUSCATE_PTR (storage),
+ c_list_length (&storage->_storage_lst),
+ c_list_length (&storage->_storage_by_uuid_lst));
+
return storage;
}
diff --git a/src/settings/nm-settings.c b/src/settings/nm-settings.c
index ef242e564a..2fb5a6262d 100644
--- a/src/settings/nm-settings.c
+++ b/src/settings/nm-settings.c
@@ -109,10 +109,12 @@ _storage_data_new_stale (NMSettingsStorage *storage,
static void
_storage_data_destroy (StorageData *sd)
{
+ nm_log_dbg (LOGD_CORE, ">>> storage_data_destroy() with " NM_HASH_OBFUSCATE_PTR_FMT, NM_HASH_OBFUSCATE_PTR (sd->storage));
c_list_unlink_stale (&sd->sd_lst);
g_object_unref (sd->storage);
nm_g_object_unref (sd->connection);
g_slice_free (StorageData, sd);
+ nm_log_dbg (LOGD_CORE, ">>> storage_data_destroy() done");
}
static StorageData *
@@ -218,12 +220,14 @@ _sett_conn_entry_new (const char *uuid)
static void
_sett_conn_entry_free (SettConnEntry *sett_conn_entry)
{
+ nm_log_dbg (LOGD_CORE, ">>> _sett_conn_entry_free() with " NM_HASH_OBFUSCATE_PTR_FMT, NM_HASH_OBFUSCATE_PTR (sett_conn_entry->storage));
c_list_unlink_stale (&sett_conn_entry->sce_dirty_lst);
nm_c_list_free_all (&sett_conn_entry->sd_lst_head, StorageData, sd_lst, _storage_data_destroy);
nm_c_list_free_all (&sett_conn_entry->dirty_sd_lst_head, StorageData, sd_lst, _storage_data_destroy);
nm_g_object_unref (sett_conn_entry->sett_conn);
nm_g_object_unref (sett_conn_entry->storage);
g_free (sett_conn_entry);
+ nm_log_dbg (LOGD_CORE, ">>> _sett_conn_entry_free() done");
}
static NMSettingsConnection *
@@ -1819,6 +1823,11 @@ nm_settings_delete_connection (NMSettings *self,
uuid = nm_settings_storage_get_uuid (cur_storage);
nm_assert (nm_utils_is_uuid (uuid));
+ nm_log_dbg (LOGD_CORE, ">>> delete connection %s,"NM_HASH_OBFUSCATE_PTR_FMT": all-len = %zu, uuid-len=%zu",
+ uuid, NM_HASH_OBFUSCATE_PTR (cur_storage),
+ c_list_length (&cur_storage->_storage_lst),
+ c_list_length (&cur_storage->_storage_by_uuid_lst));
+
sett_conn_entry = _sett_conn_entries_get (self, uuid);
g_return_if_fail (sett_conn_entry);
diff --git a/src/settings/plugins/keyfile/nms-keyfile-plugin.c b/src/settings/plugins/keyfile/nms-keyfile-plugin.c
index d2e99ad012..8c4e6b631f 100644
--- a/src/settings/plugins/keyfile/nms-keyfile-plugin.c
+++ b/src/settings/plugins/keyfile/nms-keyfile-plugin.c
@@ -450,6 +450,8 @@ _storages_consolidate (NMSKeyfilePlugin *self,
NMSKeyfileStorage *storage;
guint i;
+ nm_log_dbg (LOGD_CORE, ">>> consolidate start");
+
storages_modified = g_ptr_array_new_with_free_func (g_object_unref);
c_list_init (&storages_deleted);
@@ -525,6 +527,7 @@ _storages_consolidate (NMSKeyfilePlugin *self,
}
while ((storage = c_list_first_entry (&storages_deleted, NMSKeyfileStorage, parent._storage_lst))) {
+ nm_log_dbg (LOGD_CORE, ">>> consolidate: before delete callback // " NM_HASH_OBFUSCATE_PTR_FMT, NM_HASH_OBFUSCATE_PTR (storage));
c_list_unlink (&storage->parent._storage_lst);
storage->is_tombstone = FALSE;
callback (NM_SETTINGS_PLUGIN (self),
@@ -533,6 +536,8 @@ _storages_consolidate (NMSKeyfilePlugin *self,
user_data);
nms_keyfile_storage_destroy (storage);
}
+
+ nm_log_dbg (LOGD_CORE, ">>> consolidate done");
}
static void
@@ -938,6 +943,11 @@ delete_connection (NMSettingsPlugin *plugin,
const char *uuid;
gboolean success = TRUE;
+ nm_log_dbg (LOGD_CORE, ">>> delete keyfile storage "NM_HASH_OBFUSCATE_PTR_FMT": len-all = %zu, len-uuid=%zu",
+ NM_HASH_OBFUSCATE_PTR (storage),
+ c_list_length (&storage->parent._storage_lst),
+ c_list_length (&storage->parent._storage_by_uuid_lst));
+
_nm_assert_storage (self, storage, TRUE);
nm_assert (!error || !*error);
diff --git a/src/settings/plugins/keyfile/nms-keyfile-storage.c b/src/settings/plugins/keyfile/nms-keyfile-storage.c
index 885553a86c..446e2974e8 100644
--- a/src/settings/plugins/keyfile/nms-keyfile-storage.c
+++ b/src/settings/plugins/keyfile/nms-keyfile-storage.c
@@ -173,6 +173,9 @@ nms_keyfile_storage_new_connection (NMSKeyfilePlugin *plugin,
static void
_storage_clear (NMSKeyfileStorage *self)
{
+ nm_log_dbg (LOGD_CORE, ">>> clear storage %s // "NM_HASH_OBFUSCATE_PTR_FMT " (all-len=%zu, uuid-len=%zu)", nms_keyfile_storage_get_uuid (self), NM_HASH_OBFUSCATE_PTR (self),
+ c_list_length (&self->parent._storage_lst),
+ c_list_length (&self->parent._storage_by_uuid_lst));
c_list_unlink (&self->parent._storage_lst);
c_list_unlink (&self->parent._storage_by_uuid_lst);
g_clear_object (&self->connection);
@@ -183,6 +186,7 @@ dispose (GObject *object)
{
NMSKeyfileStorage *self = NMS_KEYFILE_STORAGE (object);
+ nm_log_dbg (LOGD_CORE, ">>> dispose() "NM_HASH_OBFUSCATE_PTR_FMT, NM_HASH_OBFUSCATE_PTR (self));
_storage_clear (self);
G_OBJECT_CLASS (nms_keyfile_storage_parent_class)->dispose (object);
@@ -191,6 +195,7 @@ dispose (GObject *object)
void
nms_keyfile_storage_destroy (NMSKeyfileStorage *self)
{
+ nm_log_dbg (LOGD_CORE, ">>> nms_keyfile_storage_destroy() "NM_HASH_OBFUSCATE_PTR_FMT, NM_HASH_OBFUSCATE_PTR (self));
_storage_clear (self);
g_object_unref (self);
}