[Pkg-utopia-maintainers] Bug#888291: /usr/sbin/NetworkManager: segfault when adding tc filter rule

Andreas Henriksson andreas at fatal.se
Wed Jan 24 17:54:34 UTC 2018


Package: network-manager
Version: 1.10.2-3
Severity: important
File: /usr/sbin/NetworkManager

Dear Maintainer,

NetworkManager consistently segfaults when adding a tc filter rule for
me. Backtrace and the example tc rules I'm trying to test out below.


------>8----8<----->8----8<------

$ sudo coredumpctl dump
           PID: 526 (NetworkManager)
           UID: 0 (root)
           GID: 0 (root)
        Signal: 11 (SEGV)
     Timestamp: Wed 2018-01-24 18:46:02 CET (4s ago)
  Command Line: /usr/sbin/NetworkManager --no-daemon
    Executable: /usr/sbin/NetworkManager
 Control Group: /system.slice/NetworkManager.service
          Unit: NetworkManager.service
         Slice: system.slice
       Boot ID: 4f7a28442cbe452d9b2e04a5dea264b6
    Machine ID: 0ca30f1374c64ae99923a08d640084f1
      Hostname: nyera
       Storage: /var/lib/systemd/coredump/core.NetworkManager.0.4f7a28442cbe452d9b2e04a5dea264b6.526.1516815962000000.lz4
       Message: Process 526 (NetworkManager) of user 0 dumped core.
                
                Stack trace of thread 526:
                #0  0x00007f808eef0866 __GI___strlen_sse2 (libc.so.6)
                #1  0x000055f5d436d466 nm_hash_update_str (NetworkManager)
                #2  0x000055f5d437aa3e nmp_object_hash_update (NetworkManager)
                #3  0x000055f5d42f93b6 _dict_idx_objs_hash (NetworkManager)
                #4  0x00007f8090814644 g_hash_table_lookup (libglib-2.0.so.0)
                #5  0x000055f5d42f9d59 nm_dedup_multi_index_obj_intern (NetworkManager)
                #6  0x000055f5d42f9ee3 _add (NetworkManager)
                #7  0x000055f5d42fa297 nm_dedup_multi_index_add_full (NetworkManager)
                #8  0x000055f5d437acf1 _idxcache_update (NetworkManager)
                #9  0x000055f5d437d079 nmp_cache_update_netlink (NetworkManager)
                #10 0x000055f5d435bdbd event_valid_msg (NetworkManager)
                #11 0x000055f5d435d30d event_handler_read_netlink (NetworkManager)
                #12 0x000055f5d435e241 delayed_action_handle_READ_NETLINK (NetworkManager)
                #13 0x000055f5d435e471 event_handler (NetworkManager)
                #14 0x00007f8090825dd5 g_main_context_dispatch (libglib-2.0.so.0)
                #15 0x00007f80908261a0 n/a (libglib-2.0.so.0)
                #16 0x00007f80908264b2 g_main_loop_run (libglib-2.0.so.0)
                #17 0x000055f5d42be789 main (NetworkManager)
                #18 0x00007f808ee7bf2a __libc_start_main (libc.so.6)
                #19 0x000055f5d42bedea _start (NetworkManager)
                
                Stack trace of thread 545:
                #0  0x00007f808ef45e6b __GI___poll (libc.so.6)
                #1  0x00007f8090826119 n/a (libglib-2.0.so.0)
                #2  0x00007f809082622c g_main_context_iteration (libglib-2.0.so.0)
                #3  0x00007f8090826271 n/a (libglib-2.0.so.0)
                #4  0x00007f809084d5f5 n/a (libglib-2.0.so.0)
                #5  0x00007f808f21851a start_thread (libpthread.so.0)
                #6  0x00007f808ef503ef __clone (libc.so.6)
                
                Stack trace of thread 547:
                #0  0x00007f808ef45e6b __GI___poll (libc.so.6)
                #1  0x00007f8090826119 n/a (libglib-2.0.so.0)
                #2  0x00007f80908264b2 g_main_loop_run (libglib-2.0.so.0)
                #3  0x00007f8091013ad6 n/a (libgio-2.0.so.0)
                #4  0x00007f809084d5f5 n/a (libglib-2.0.so.0)
                #5  0x00007f808f21851a start_thread (libpthread.so.0)
                #6  0x00007f808ef503ef __clone (libc.so.6)
Refusing to dump core to tty (use shell redirection or specify --output).

------>8----8<----->8----8<------

export FOOPORT=53000
export FOOIP=1.2.3.4
export INTERFACE=eth0 # change to your actual interface name.

tc qdisc add dev $INTERFACE root handle 1: htb default 10
tc class add dev $INTERFACE parent 1: classid 1:1 htb rate 1000mbit ceil 1000mbit

# default leaf class
tc class add dev $INTERFACE parent 1:1 classid 1:10 htb rate 1000mbit ceil 1000mbit

# leaf class to be used for SF traffic limited to 5mbit
tc class add dev $INTERFACE parent 1:1 classid 1:20 htb rate 5mbit ceil 5mbit

# Put traffic going to Aurix on SF port number in 1:20 leaf class
tc filter add dev $INTERFACE protocol ip parent 1:0 prio 0 u32 \
	match ip dport ${FOOPORT} 0xffff \
	match ip dst ${FOOIP}/32 \
	flowid 1:20


------>8----8<----->8----8<------

The segfault happens when running the last command (tc filter ...)
which means my wifi connection goes down and all my network traffic
is dead.


Regards,
Andreas Henriksson

-- System Information:
Debian Release: buster/sid
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.14.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages network-manager depends on:
ii  adduser                3.116
ii  dbus                   1.12.2-1
ii  libaudit1              1:2.8.2-1
ii  libbluetooth3          5.47-1+b1
ii  libc6                  2.26-5
ii  libcurl3-gnutls        7.57.0-1
ii  libglib2.0-0           2.54.3-2
ii  libgnutls30            3.5.17-1
ii  libjansson4            2.10-1
ii  libmm-glib0            1.6.8-2
ii  libndp0                1.6-1+b1
ii  libnewt0.52            0.52.20-1+b1
ii  libnl-3-200            3.2.27-2
ii  libnm0                 1.10.2-3
ii  libpam-systemd         236-3+b1
ii  libpolkit-agent-1-0    0.105-18
ii  libpolkit-gobject-1-0  0.105-18
ii  libpsl5                0.19.1-4
ii  libreadline7           7.0-3
ii  libselinux1            2.7-2
ii  libsystemd0            236-3+b1
ii  libteamdctl0           1.26-1+b1
ii  libudev1               236-3+b1
ii  libuuid1               2.30.2-0.3
ii  lsb-base               9.20170808
ii  policykit-1            0.105-18
ii  udev                   236-3+b1
ii  wpasupplicant          2:2.6-15

Versions of packages network-manager recommends:
ii  crda             3.18-1
ii  dnsmasq-base     2.78-1
ii  iptables         1.6.1-2+b1
ii  iputils-arping   3:20161105-1
ii  isc-dhcp-client  4.3.5-3+b2
ii  modemmanager     1.6.8-2
ii  ppp              2.4.7-1+4

Versions of packages network-manager suggests:
pn  libteam-utils  <none>

-- no debconf information



More information about the Pkg-utopia-maintainers mailing list