NetworkManager/src
Thomas Haller ba9a278c7c Revert "platform: cancel delayed action REFRESH_LINK when receiving an update"
On some kernels (at least RHEL-7.2) we receive a spurious RTM_NEWLINK
message after the RTM_DELLINK message for deleting a bond master.

On RHEL-7, the following commands give:

    # ip link add dummy0 type dummy
    # ip link add bond0 type bond
    # ip link set bond0 up
    # ip link set dummy0 master bond0
    # ip monitor link &
    # ip link del bond0
    21: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noqueue state DOWN
        link/ether 1e:a6:6c:81:c1:8d brd ff:ff:ff:ff:ff:ff
    Deleted 21: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN
        link/ether 1e:a6:6c:81:c1:8d brd ff:ff:ff:ff:ff:ff
    20: dummy0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
        link/ether 1e:a6:6c:81:c1:8d brd ff:ff:ff:ff:ff:ff
    21: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN
        link/ether da:ee:58:70:6f:e5 brd ff:ff:ff:ff:ff:ff

    ^^^^^^^^^^^^^^^ RTM_NEWLINK after RTM_DELLINK (and there follows no
    RTM_DELLINK afterwards)

    21: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN
        link/ether da:ee:58:70:6f:e5 brd ff:ff:ff:ff:ff:ff
    20: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noqueue state DOWN
        link/ether 1e:a6:6c:81:c1:8d brd ff:ff:ff:ff:ff:ff
    20: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noqueue state DOWN
        link/ether 1e:a6:6c:81:c1:8d brd ff:ff:ff:ff:ff:ff

Fix that by reverting clear_REFRESH_LINK(). This fix has two downsides:

- on kernels where this hack is not necessary, we unnecessarily refetch
  a link
- the platform cache first removes the link, adds it again and removes
  it. This is ugly, but should have no real consequences because all
  listeners to the platform signals delay processing the signals to an
  idle handler.

https://bugzilla.redhat.com/show_bug.cgi?id=1285719

This reverts commit f4f4e1cf09 (on master).
This reverts commit 91c00072f2 (on nm-1-0).

(cherry picked from commit 83240f24ae)
2015-12-01 17:21:14 +01:00
..
devices core: declare nm_supplicant_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:16:58 +01:00
dhcp-manager core: declare nm_dhcp_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:07:05 +01:00
dns-manager core: declare nm_dns_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:01:37 +01:00
dnsmasq-manager build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h" 2015-09-30 23:35:52 +02:00
platform Revert "platform: cancel delayed action REFRESH_LINK when receiving an update" 2015-12-01 17:21:14 +01:00
ppp-manager build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h" 2015-09-30 23:35:52 +02:00
rdisc build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h" 2015-09-30 23:35:52 +02:00
settings core: declare nm_agent_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:17:23 +01:00
supplicant-manager core: declare nm_supplicant_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:16:58 +01:00
tests main: add argument --print-config to NetworkManager 2015-11-22 13:46:21 +01:00
vpn-manager core: declare nm_agent_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:17:23 +01:00
main-utils.c core: don't handle SIGUSR1 and SIGUSR2 signals for pre 2.36.0 glib 2015-11-25 10:58:22 +01:00
main-utils.h config: pass signals to nm_config_reload() 2015-06-26 10:40:47 +02:00
main.c core: declare nm_supplicant_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:16:58 +01:00
Makefile.am build: extract version macros from "nm-version.h" to new header file "nm-version-macros.h" 2015-09-30 23:35:52 +02:00
NetworkManagerUtils.c core: fix assuming a connection without S390 properties (rh #1276343) 2015-11-03 08:47:32 +01:00
NetworkManagerUtils.h core: fix builds with older gcc (like 4.4.x) 2015-11-10 11:12:33 -06:00
nm-activation-request.c core, dispatcher: drop unnecessary setpgid() calls 2015-06-20 10:56:58 +02:00
nm-activation-request.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-active-connection.c logging: declare default logging macros in "nm-logging.h" 2015-08-20 18:05:43 +02:00
nm-active-connection.h nm-manager: add 'metered' property 2015-07-22 13:52:46 +02:00
nm-auth-manager.c logging: declare default logging macros in "nm-logging.h" 2015-08-20 18:05:43 +02:00
nm-auth-manager.h core: drop all remaining core-internal error domains 2014-10-22 08:29:10 -04:00
nm-auth-subject.c core: return parent pid from nm_utils_get_start_time_for_pid() 2015-07-01 11:40:40 +02:00
nm-auth-subject.h auth: support disabling POLKIT authentication entirely at compile time 2014-09-29 13:51:11 +02:00
nm-auth-utils.c auth-utils: memleak: free the key when we steal data 2015-02-18 18:16:31 +01:00
nm-auth-utils.h auth: rework polkit autorization to use DBUS interface directly 2014-09-29 13:51:11 +02:00
nm-config-data.c main: add argument --print-config to NetworkManager 2015-11-22 13:46:21 +01:00
nm-config-data.h main: add argument --print-config to NetworkManager 2015-11-22 13:46:21 +01:00
nm-config.c main: add argument --print-config to NetworkManager 2015-11-22 13:46:21 +01:00
nm-config.h config: fix wrong signature of class-method config_changed() for signal 2015-09-04 16:36:54 +02:00
nm-connection-provider.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-connection-provider.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-connectivity.c logging: declare default logging macros in "nm-logging.h" 2015-08-20 18:05:43 +02:00
nm-connectivity.h connectivity: make NMConnectivity independent of NMConfig 2015-05-05 16:50:10 +02:00
nm-dbus-manager.c core: replace g_test_initialized() by nm_utils_get_testing() 2015-07-03 09:24:02 +02:00
nm-dbus-manager.h dbus-manager: add nm_dbus_manager_setup() function for testing 2015-03-13 11:50:50 +01:00
nm-dcb.c core: use GUnixSignalWatchSource to simplify signal handling 2015-06-20 10:48:21 +02:00
nm-dcb.h core: drop all remaining core-internal error domains 2014-10-22 08:29:10 -04:00
nm-default-route-manager.c default-route: introduce _LOG2*() logging macros to log entry-messages 2015-11-20 15:24:25 +01:00
nm-default-route-manager.h default-route: add @out_is_never_default argument to has_default_route() 2015-06-19 13:42:21 +02:00
nm-dhcp4-config.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-dhcp4-config.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-dhcp6-config.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-dhcp6-config.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-dispatcher.c dispatcher: don't abort when VPN connections have no IPv4 2015-11-13 16:15:01 +01:00
nm-dispatcher.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-firewall-manager.c core: declare nm_firewall_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:14:01 +01:00
nm-firewall-manager.h firewall: make call handle an opaque pointer type 2014-11-19 12:58:36 +01:00
nm-iface-helper.c core: declare nm_dhcp_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:07:05 +01:00
nm-ip4-config.c ip4-config: properly handle gateway in nm_ip4_config_replace() 2015-11-26 10:13:10 +01:00
nm-ip4-config.h core: add @merge_flags argument to nm_ip4_config_merge() and nm_ip6_config_merge() 2015-08-06 18:00:44 +02:00
nm-ip6-config.c core: fix handling ignore-auto-dns for IPv6 nameservers 2015-09-09 13:03:26 +02:00
nm-ip6-config.h core: add @merge_flags argument to nm_ip4_config_merge() and nm_ip6_config_merge() 2015-08-06 18:00:44 +02:00
nm-logging.c logging: coerce negative error values to positive errno 2015-09-24 10:55:37 +02:00
nm-logging.h logging: introduce an alternative set of logging macros 2015-11-20 15:24:25 +01:00
nm-manager.c core: declare nm_vpn_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:10:28 +01:00
nm-manager.h core: fix NMManager in private-bus-only case 2015-08-12 16:27:14 +02:00
nm-multi-index.c all: fix additional compiler warningis about function declarations 2015-06-22 09:56:05 +02:00
nm-multi-index.h core: add NMMultiIndex class 2015-06-21 15:21:56 +02:00
nm-policy.c core: declare nm_dns_manager_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 13:01:37 +01:00
nm-policy.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-properties-changed-signal.c core: log ignored property notification with level TRACE 2015-03-11 17:07:55 +01:00
nm-properties-changed-signal.h core: make nm-properties-changed-signal always export the right properties 2013-05-20 16:38:33 -03:00
nm-rfkill-manager.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-rfkill-manager.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-route-manager.c logging: swap names of logging macros _LOGT() and _LOGt() 2015-11-06 14:21:11 +01:00
nm-route-manager.h route-manager: add argument to to only remove routes that were added by NMRouteManager 2015-07-14 13:44:56 +02:00
nm-session-monitor-ck.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-monitor-null.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-monitor-systemd.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-monitor.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-session-utils.c all: consistently include config.h 2014-11-13 17:18:42 -05:00
nm-session-utils.h core: drop all remaining core-internal error domains 2014-10-22 08:29:10 -04:00
nm-sleep-monitor-systemd.c core: declare nm_sleep_monitor_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 12:57:42 +01:00
nm-sleep-monitor-upower.c core: declare nm_sleep_monitor_get() using NM_DEFINE_SINGLETON_GETTER() 2015-12-01 12:57:42 +01:00
nm-sleep-monitor.h all: fix up multiple-include-guard defines 2014-08-16 10:17:14 -04:00
nm-types.h core: add @merge_flags argument to nm_ip4_config_merge() and nm_ip6_config_merge() 2015-08-06 18:00:44 +02:00
org.freedesktop.NetworkManager.conf dbus: add strongswan to the vpn plugin bus names 2015-10-23 18:21:59 +02:00