diff options
author | Thomas Haller <thaller@redhat.com> | 2015-06-17 18:26:14 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2015-06-18 18:44:39 +0200 |
commit | 0c9154f284b29b60c6e420d598aab7370a90e4b4 (patch) | |
tree | 7e52142833880c28c8c0fedd788ae3130b038827 | |
parent | 6849050ad914b046e55bcb4eaad826000fef620f (diff) | |
download | NetworkManager-th/platform-fix.tar.gz |
TEST: add logging statementsth/platform-fix
-rw-r--r-- | src/nm-default-route-manager.c | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/src/nm-default-route-manager.c b/src/nm-default-route-manager.c index 4beffcf7b1..8410e2b15c 100644 --- a/src/nm-default-route-manager.c +++ b/src/nm-default-route-manager.c @@ -230,6 +230,9 @@ _platform_route_sync_add (const VTableIP *vtable, NMDefaultRouteManager *self, g for (i = 0; i < entries->len; i++) { Entry *e = g_ptr_array_index (entries, i); + _LOGD (vtable->vt->addr_family, ">>> SYNC-ADD: "LOG_ENTRY_FMT": %s (%u)", LOG_ENTRY_ARGS (i, e), + vtable->vt->route_to_string (&e->route), (guint) e->effective_metric); + if (e->never_default) continue; @@ -238,10 +241,14 @@ _platform_route_sync_add (const VTableIP *vtable, NMDefaultRouteManager *self, g if (e->synced) { g_assert (!entry || metric == G_MAXUINT32); - if (!entry) + if (!entry) { + _LOGD (vtable->vt->addr_family, ">>> SYNC-ADD: set entry"); entry = e; - } else + } + } else { + _LOGD (vtable->vt->addr_family, ">>> SYNC-ADD: set entry_unsynced"); entry_unsynced = e; + } } /* We don't expect to have an unsynced *and* a synced entry for the same metric. @@ -397,6 +404,7 @@ _get_assumed_interface_metrics (const VTableIP *vtable, NMDefaultRouteManager *s route = _vt_route_index (vtable, routes, i); + _LOGD (vtable->vt->addr_family, ">>> get-assumed-interface-metrics: platform-route: %i, %s", i, vtable->vt->route_to_string ((NMPlatformIPXRoute *) route)); for (j = 0; j < entries->len; j++) { Entry *e = g_ptr_array_index (entries, j); @@ -407,8 +415,10 @@ _get_assumed_interface_metrics (const VTableIP *vtable, NMDefaultRouteManager *s } } - if (!ifindex_has_synced_entry) + if (!ifindex_has_synced_entry) { + _LOGD (vtable->vt->addr_family, ">>> get-assumed-interface-metrics: %u", (unsigned) vtable->vt->metric_normalize (route->metric)); g_hash_table_add (result, GUINT_TO_POINTER (vtable->vt->metric_normalize (route->metric))); + } } /* also add all non-synced metrics from our entries list. We might have there some metrics that @@ -431,8 +441,10 @@ _get_assumed_interface_metrics (const VTableIP *vtable, NMDefaultRouteManager *s } } - if (!ifindex_has_synced_entry) + if (!ifindex_has_synced_entry) { + _LOGD (vtable->vt->addr_family, ">>> get-assumed-interface-metrics: (internal) %u", (unsigned) vtable->vt->metric_normalize (e_i->route.rx.metric)); g_hash_table_add (result, GUINT_TO_POINTER (vtable->vt->metric_normalize (e_i->route.rx.metric))); + } } return result; @@ -467,6 +479,8 @@ _resync_all (const VTableIP *vtable, NMDefaultRouteManager *self, const Entry *c g_assert (priv->resync.guard == 0); priv->resync.guard++; + _LOGD (vtable->vt->addr_family, ">>> _resync_all() start"); + if (!external_change) { if (vtable->vt->is_ip4) priv->resync.has_v4_changes = FALSE; @@ -493,6 +507,9 @@ _resync_all (const VTableIP *vtable, NMDefaultRouteManager *self, const Entry *c g_assert (entry != old_entry); + _LOGD (vtable->vt->addr_family, ">>> check effective metric for entry "LOG_ENTRY_FMT": %s (%u), last_metric=%lld", LOG_ENTRY_ARGS (i, entry), + vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric, (long long) last_metric); + if (entry->never_default) continue; @@ -571,6 +588,8 @@ _resync_all (const VTableIP *vtable, NMDefaultRouteManager *self, const Entry *c } if (entry->effective_metric != expected_metric) { + _LOGD (vtable->vt->addr_family, ">>> update effective metric for entry "LOG_ENTRY_FMT": %s (%u -> %u)", LOG_ENTRY_ARGS (i, entry), + vtable->vt->route_to_string (&entry->route), (guint) entry->effective_metric, (guint) expected_metric); entry->effective_metric = expected_metric; changed = TRUE; } @@ -584,6 +603,8 @@ _resync_all (const VTableIP *vtable, NMDefaultRouteManager *self, const Entry *c for (j = 0; j < changed_metrics->len; j++) { expected_metric = g_array_index (changed_metrics, guint32, j); + _LOGD (vtable->vt->addr_family, ">>> CHECK metric %u (last is %lld)", (unsigned) expected_metric, (long long) last_metric); + if (last_metric == (gint64) expected_metric) { /* skip duplicates. */ continue; @@ -608,6 +629,7 @@ _resync_all (const VTableIP *vtable, NMDefaultRouteManager *self, const Entry *c g_hash_table_unref (assumed_metrics); priv->resync.guard--; + _LOGD (vtable->vt->addr_family, ">>> _resync_all() end (%d)", (int) changed); return changed; } |