Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

Jiri Palecek
Package: network-manager
Version: 1.14.4-4
Severity: normal

Dear Maintainer,

I've noticed network manager is consuming most of the cpu time on my
system. It seems to be caused by the connectivity checking code. The
symptoms are:

1. ltrace shows this repeating on and on:

exe->epoll_wait(15, 0xbfb0bba0, 1, 0)                                                                                                                                   = 0
exe->clock_gettime(0, 0xbfb0bb54, 1, 15)                                                                                                                                = 0
exe->clock_gettime(1, 0xbfb0bb54, 1, 15)                                                                                                                                = 0
exe->clock_gettime(7, 0xbfb0bb54, 1, 15)                                                                                                                                = 0
exe->g_object_ref(0x15c1b58, 0x15adf20, 0x15a84b0, 0xb7a5acc6)                                                                                                          = 0x15c1b58
exe->g_io_channel_unix_get_fd(0x1629fb0, 0x15adf20, 0x15a84b0, 0xb7a5acc6)                                                                                              = 20
exe->curl_multi_socket_action(0x15c4900, 20, 2, 0xbfb0bd88)                                                                                                             = 0
exe->curl_multi_info_read(0x15c4900, 0xbfb0bd80, 2, 0xbfb0bd88)                                                                                                         = 0
exe->g_object_ref(0x15c1b58, 0x1612440, 0x1640dc0, 0xb7a5acc6)                                                                                                          = 0x15c1b58
exe->g_io_channel_unix_get_fd(0x15e32b0, 0x1612440, 0x1640dc0, 0xb7a5acc6)                                                                                              = 22
exe->curl_multi_socket_action(0x15c4900, 22, 2, 0xbfb0bd88)                                                                                                             = 0
exe->curl_multi_info_read(0x15c4900, 0xbfb0bd80, 2, 0xbfb0bd88)                                                                                                         = 0
exe->g_object_ref(0x15c1b58, 0, 0x1654880, 0xb7a5acc6)                                                                                                                  = 0x15c1b58
exe->g_io_channel_unix_get_fd(0x1627080, 0, 0x1654880, 0xb7a5acc6)                                                                                                      = 24
exe->curl_multi_socket_action(0x15c4900, 24, 2, 0xbfb0bd88)                                                                                                             = 0
exe->curl_multi_info_read(0x15c4900, 0xbfb0bd80, 2, 0xbfb0bd88)                                                                                                         = 0

2. strace only shows incrementing and decrementing an eventfd, no
network activity or something.

poll([{fd=3, events=POLLIN}, {fd=6, events=POLLIN}, {fd=8, events=POLLIN|POLLPRI}, {fd=12, events=POLLIN}, {fd=13, events=POLLIN}, {fd=14, events=POLLIN}, {fd=15, events=POLLIN}, {fd=16, events=POLLIN}, {fd=17, events=POLLIN}, {fd=20, events=POLLOUT}, {fd=22, events=POLLOUT}, {fd=24, events=POLLOUT}], 12, 0) = 4 ([{fd=3, revents=POLLIN}, {fd=20, revents=POLLOUT}, {fd=22, revents=POLLOUT}, {fd=24, revents=POLLOUT}])
read(3, "\6\0\0\0\0\0\0\0", 16)         = 8
epoll_wait(15, [], 1, 0)                = 0
clock_gettime(CLOCK_BOOTTIME, {tv_sec=124345, tv_nsec=994550347}) = 0
write(3, "\1\0\0\0\0\0\0\0", 8)         = 8
write(3, "\1\0\0\0\0\0\0\0", 8)         = 8
write(3, "\1\0\0\0\0\0\0\0", 8)         = 8
write(3, "\1\0\0\0\0\0\0\0", 8)         = 8
write(3, "\1\0\0\0\0\0\0\0", 8)         = 8
write(3, "\1\0\0\0\0\0\0\0", 8)         = 8

Note: fd 22 is

NetworkMa 20906 root   20u     IPv4    2035553      0t0     TCP   debian:45852->senfter.debian.org:http (ESTABLISHED)

However the event loop doesn't seem to touch the connection in any
way. fds 20 and 24 are similar connections.

Do you have any ideas about this? I'm not very knowledgeable about curl,
but surely it shouldn't hog the glib main loop like that?

Regards
     Jiri Palecek

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

Kernel: Linux 4.19.0-3-686-pae (SMP w/2 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=cs_CZ, LC_CTYPE=cs_CZ (charmap=ISO-8859-2), LANGUAGE=cs_CZ (charmap=ISO-8859-2)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages network-manager depends on:
ii  adduser                3.116
ii  dbus                   1.12.12-1
ii  init-system-helpers    1.56
ii  libaudit1              1:2.8.4-2
ii  libbluetooth3          5.49-4
ii  libc6                  2.28-6
ii  libcurl3-gnutls        7.64.0-1
ii  libglib2.0-0           2.58.3-1
ii  libgnutls30            3.6.6-2
ii  libjansson4            2.12-1
ii  libmm-glib0            1.6.2-1
ii  libndp0                1.6-1+b1
ii  libnewt0.52            0.52.20-4
ii  libnm0                 1.14.4-4
ii  libpam-systemd         240-5
ii  libpolkit-agent-1-0    0.105-25
ii  libpolkit-gobject-1-0  0.105-25
ii  libpsl5                0.20.2-1
ii  libreadline7           7.0-5
ii  libselinux1            2.8-1+b1
ii  libsystemd0            240-5
ii  libteamdctl0           1.28-1
ii  libudev1               240-5
ii  libuuid1               2.33.1-0.1
ii  lsb-base               10.2018112800
ii  policykit-1            0.105-25
ii  udev                   240-5
ii  wpasupplicant          2:2.6-18

Versions of packages network-manager recommends:
pn  crda             <none>
pn  dnsmasq-base     <none>
ii  iptables         1.8.2-2+b1
ii  isc-dhcp-client  4.4.1-2
pn  modemmanager     <none>
pn  ppp              <none>

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

-- Configuration Files:
/etc/NetworkManager/NetworkManager.conf changed:
[main]
plugins=ifupdown,keyfile
no-auto-default=e0:cb:4e:c2:58:50,
[ifupdown]
managed=false


-- no debconf information

Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

gpe92
Package: network-manager
Version: 1.14.4-4
Followup-For: Bug #922554

Dear Maintainer,

I've exactly the same problem since few days.

BR

-- System Information:
Debian Release: buster/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.19.0-2-amd64 (SMP w/4 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8), LANGUAGE=fr_FR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages network-manager depends on:
ii  adduser                3.118
ii  dbus                   1.12.12-1
ii  init-system-helpers    1.56+nmu1
ii  libaudit1              1:2.8.4-2
ii  libbluetooth3          5.50-1
ii  libc6                  2.28-7
ii  libcurl3-gnutls        7.64.0-1
ii  libglib2.0-0           2.58.3-1
ii  libgnutls30            3.6.6-2
ii  libjansson4            2.12-1
ii  libmm-glib0            1.10.0-1
ii  libndp0                1.6-1+b1
ii  libnewt0.52            0.52.20-8
ii  libnm0                 1.14.4-4
ii  libpam-systemd         240-5
ii  libpolkit-agent-1-0    0.105-25
ii  libpolkit-gobject-1-0  0.105-25
ii  libpsl5                0.20.2-2
ii  libreadline7           7.0-5
ii  libselinux1            2.8-1+b1
ii  libsystemd0            240-5
ii  libteamdctl0           1.28-1
ii  libudev1               240-5
ii  libuuid1               2.33.1-0.1
ii  lsb-base               10.2018112800
ii  policykit-1            0.105-25
ii  udev                   240-5
ii  wpasupplicant          2:2.6-21

Versions of packages network-manager recommends:
ii  crda                         3.18-1
ii  dnsmasq-base [dnsmasq-base]  2.80-1
ii  iptables                     1.8.2-3
ii  isc-dhcp-client              4.4.1-2
ii  modemmanager                 1.10.0-1
ii  ppp                          2.4.7-2+4

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

-- Configuration Files:
/etc/NetworkManager/NetworkManager.conf changed:
[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=true


-- no debconf information

Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

Michael Biebl-3
In reply to this post by Jiri Palecek
Control: tags -1 + moreinfo

Do you have network-manager-config-connectivity-debian installed or
connectivity checking enabled otherwise?
Is the server reachable for the connectivity check reachable?

--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?


signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

Jiri Palecek
Hello,

On 26. 02. 19 19:26, Michael Biebl wrote:
> Control: tags -1 + moreinfo
>
> Do you have network-manager-config-connectivity-debian installed
oh yeah
> Is the server reachable for the connectivity check reachable?
>
I think so. At least I can't see any connectivity problems.


Regards

     Jiri Palecek

Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

gpe92
In reply to this post by Michael Biebl-3
On Tue, 26 Feb 2019 19:26:30 +0100 Michael Biebl <[hidden email]> wrote:
> Control: tags -1 + moreinfo
>
> Do you have network-manager-config-connectivity-debian installed or
> connectivity checking enabled otherwise?

Yes network-manager-config-connectivity-debian is installed

> Is the server reachable for the connectivity check reachable?

Not sure to understand the question but the connectivity is ok even if I kill
NetworManager to avoid CPU consumption.

BR

Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

Dominique Dumont
In reply to this post by Jiri Palecek
On Mon, 18 Feb 2019 01:45:12 +0100 Jiri Palecek <[hidden email]> wrote:
> exe->curl_multi_socket_action(0x15c4900, 24, 2, 0xbfb0bd88)                                                                                                             = 0
> exe->curl_multi_info_read(0x15c4900, 0xbfb0bd80, 2, 0xbfb0bd88)                                                                                                         = 0

Looks related to
https://bugs.archlinux.org/index.php?do=details&action=details.addvote&task_id=61688

where they suggest to downgrade curl (or libcurl in our case)

HTH

Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

gpe92
On Sat, 02 Mar 2019 19:49:49 +0100 Dominique Dumont <[hidden email]> wrote:
> On Mon, 18 Feb 2019 01:45:12 +0100 Jiri Palecek <[hidden email]> wrote:
> > exe->curl_multi_socket_action(0x15c4900, 24, 2,
0xbfb0bd88)                                                                    
                                         = 0
> > exe->curl_multi_info_read(0x15c4900, 0xbfb0bd80, 2,
0xbfb0bd88)                                                                    
                                     = 0
>
> Looks related to
>
https://bugs.archlinux.org/index.php?do=details&action=details.addvote&task_id=61688
>
> where they suggest to downgrade curl (or libcurl in our case)
>
> HTH
>
>
>
>

it seems that the issue is resolved with their last curl version 7.64.0-9, no?

Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

Dominique Dumont
In reply to this post by Jiri Palecek
On Sun, 03 Mar 2019 14:23:40 +0100 gpe <[hidden email]> wrote:
> it seems that the issue is resolved with their last curl version 7.64.0-9, no?

Looks like it.

They probably patched curl with [1] following the resolution if this curl bug [2]. I don't know
archlinux enough to track down the patch applied to curl version 7.64.0-9

Note: I've linked this Debian bug to upstream network-manager bug [3]

HTH

[1] https://github.com/curl/curl/commit/b7753be57d7bdb6b909f1a0a4207950e18100d79
[2] https://github.com/curl/curl/issues/3585
[3] https://gitlab.freedesktop.org/NetworkManager/NetworkManager/issues/123

Reply | Threaded
Open this post in threaded view
|

Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

Dominique Dumont
In reply to this post by Jiri Palecek
On Tue, 05 Mar 2019 09:03:53 +0100 Dominique Dumont <[hidden email]> wrote:
> They probably patched curl with [1] following the resolution if this curl bug [2]. I don't know
> archlinux enough to track down the patch applied to curl version 7.64.0-9

Never mind. Archlinux 's web site is easy to use. Here's the patch
 they applied to curl package [1]. They indeed used the commit that
resolved the curl bug upstream .

ghedo, can you take over this bug for curl package and release a fix ?

All the best

[1] https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/curl&id=4ea6d939508dd6140d3bba0b784f081e4e75ec0f

Reply | Threaded
Open this post in threaded view
|

Bug#922554: [Pkg-utopia-maintainers] Bug#922554: network-manager: NetworkManager continuously spinning, probably while checking for connectivity

Michael Biebl-3
Control: reassign -1 src:curl
Control: found -1 7.64.0-1
Control: tags -1 + patch fixed-upstream

Am 05.03.19 um 10:10 schrieb Dominique Dumont:

> On Tue, 05 Mar 2019 09:03:53 +0100 Dominique Dumont <[hidden email]> wrote:
>> They probably patched curl with [1] following the resolution if this curl bug [2]. I don't know
>> archlinux enough to track down the patch applied to curl version 7.64.0-9
>
> Never mind. Archlinux 's web site is easy to use. Here's the patch
>  they applied to curl package [1]. They indeed used the commit that
> resolved the curl bug upstream .
>
> ghedo, can you take over this bug for curl package and release a fix ?
>
> All the best
>
> [1] https://git.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/curl&id=4ea6d939508dd6140d3bba0b784f081e4e75ec0f
I've reassigned the bug report.

Dear curl maintainers, please consider cherry-picking the patch from
https://github.com/curl/curl/pull/3589


--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?


signature.asc (849 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Bug#922554: plasma-nm not responding when NetworkManager is running at 100% CPU

Dominique Dumont
In reply to this post by Jiri Palecek
Control: severity -1 important

Hi

I've seen another issue when NetworkManager is spinning

The plasma-nm widget no longer reports the status of the network connection.
Network connections cannot be setup or teared down. This happens most often
with wireless.
Restarting NetworkManager has no effect: NetworkManager goes to 100% CPU
immediately after restart.

The only way out is a reboot.

This bugs is mostly a problem on laptop where wifi is often used.

I've set the severity of this bug to Important because of the effect on laptop.

All the best