diff options
author | Dan Williams <dcbw@redhat.com> | 2014-07-11 14:51:12 -0500 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2014-07-11 14:53:07 -0500 |
commit | 1e96e68e36ad0fb158e3a91e00c7fdc1d109f69d (patch) | |
tree | 743ad66bf6858a45ec3fd3ea9377e303516a063b | |
parent | faa7d8abca97a75419220bc727cc82ae5d6925b5 (diff) |
platform: ignore RTM_F_CLONED (eg, cache) routes
The kernel adds these for various operations; they are short-lived,
added often, and not useful to NetworkManager. Ignore them. This
prevents NetworkManager from continuously updating the IPv6 config
and emitting state changes to clients via D-Bus for useless changes.
(cherry picked from commit 66d1f2f53c59f8eb875609c858629854232ed57c)
-rw-r--r-- | src/platform/nm-linux-platform.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c index f73ff3207..9bfbabdb6 100644 --- a/src/platform/nm-linux-platform.c +++ b/src/platform/nm-linux-platform.c @@ -3500,7 +3500,8 @@ _route_match (struct rtnl_route *rtnlroute, int family, int ifindex) rtnl_route_get_table (rtnlroute) != RT_TABLE_MAIN || rtnl_route_get_protocol (rtnlroute) == RTPROT_KERNEL || rtnl_route_get_family (rtnlroute) != family || - rtnl_route_get_nnexthops (rtnlroute) != 1) + rtnl_route_get_nnexthops (rtnlroute) != 1 || + rtnl_route_get_flags (rtnlroute) & RTM_F_CLONED) return FALSE; nexthop = rtnl_route_nexthop_n (rtnlroute, 0); |