2020-04-26 13:03:07 |
Kevin Keijzer |
bug |
|
|
added bug |
2020-04-26 14:04:52 |
Launchpad Janitor |
gnome-weather (Ubuntu): status |
New |
Confirmed |
|
2020-05-06 10:02:26 |
Kevin Keijzer |
affects |
gnome-weather (Ubuntu) |
geoclue-2.0 (Ubuntu) |
|
2020-05-06 10:02:42 |
Kevin Keijzer |
summary |
gnome-weather / geoclue polls wpasupplicant SSID list too often |
geoclue polls wpasupplicant SSID list too often |
|
2020-05-06 10:07:02 |
Kevin Keijzer |
description |
Steps to reproduce:
1. Install GNOME Weather (sudo apt install gnome-weather)
2. In GNOME Control Center > Privacy, enable Location Services
3. Open GNOME Weather at least once, so it embeds a forecast in the notifications menu
4. Do something latency-sensitive on WiFi, like SSH or ping
Hypothesis:
When GNOME Weather is running in the background and location services are enabled, it seems to tell geoclue to use NetworkManager's D-Bus API for letting wpasupplicant scan for surrounding networks very often. This causes lots of latency spikes and visible lag.
Typing characters in an SSH session is rather laggy, and running something as simple as mtr 192.168.1.1 will show that every ~20 seconds the latency is over 100ms and packet loss occurs, while it's normally around 1.5ms with no packet loss. There are probably lots of other issues caused by this as well.
When a WiFi adapter scans for SSID's, it has to switch channels, delaying or dropping traffic in the meanwhile. This is what causes the lag and packet loss.
Disabling location services in gnome-control-center and disabling automatic location in gnome-weather solves this issue.
Expected behaviour:
Don't break WiFi for a weather report.
$ lsb_release -rd
Description: Ubuntu 20.04 LTS
Release: 20.04
$ apt-cache policy gnome-weather
gnome-weather:
Installed: 3.36.1-1
Candidate: 3.36.1-1
Version table:
*** 3.36.1-1 500
500 http://nl.archive.ubuntu.com/ubuntu focal/universe amd64 Packages
500 http://nl.archive.ubuntu.com/ubuntu focal/universe i386 Packages
100 /var/lib/dpkg/status |
Steps to reproduce:
1. Install GNOME Weather, or GNOME Clocks, or basically anything that determines your location
2. In GNOME Control Center > Privacy, enable Location Services
3. Open the application requesting your location
4. Do something latency-sensitive on WiFi, like SSH or ping
Hypothesis:
When an application requesting your location is running in the background and location services are enabled, it seems to tell geoclue to use NetworkManager's D-Bus API for letting wpasupplicant scan for surrounding networks very often. This causes lots of latency spikes and visible lag.
Typing characters in an SSH session is rather laggy, and running something as simple as mtr 192.168.1.1 will show that every ~20 seconds the latency is over 100ms and packet loss occurs, while it's normally around 1.5ms with no packet loss. There are probably lots of other issues caused by this as well.
When a WiFi adapter scans for SSID's, it has to switch channels, delaying or dropping traffic in the meanwhile. This is what causes the lag and packet loss.
On phones connected to LTE this may make sense, but on a laptop which uses WiFi as its active network, this is detrimental to the connection.
Changing /etc/geoclue/geoclue.conf to disable WiFi scanning, solves this problem:
[wifi]
enable=false
On Ubuntu 18.04, this setting was the default. On Ubuntu 20.04, it has changed to 'true'.
Expected behaviour:
Don't break WiFi for a location scan.
$ lsb_release -rd
Description: Ubuntu 20.04 LTS
Release: 20.04
$ apt-cache policy geoclue-2.0
geoclue-2.0:
Installed: 2.5.6-0ubuntu1
Candidate: 2.5.6-0ubuntu1
Version table:
*** 2.5.6-0ubuntu1 500
500 http://nl.archive.ubuntu.com/ubuntu focal/main amd64 Packages
100 /var/lib/dpkg/status |
|
2020-05-06 10:07:53 |
Kevin Keijzer |
summary |
geoclue polls wpasupplicant SSID list too often |
geoclue polls wpasupplicant SSID list too often, resulting in lag and packet loss |
|
2020-05-06 10:09:41 |
Kevin Keijzer |
description |
Steps to reproduce:
1. Install GNOME Weather, or GNOME Clocks, or basically anything that determines your location
2. In GNOME Control Center > Privacy, enable Location Services
3. Open the application requesting your location
4. Do something latency-sensitive on WiFi, like SSH or ping
Hypothesis:
When an application requesting your location is running in the background and location services are enabled, it seems to tell geoclue to use NetworkManager's D-Bus API for letting wpasupplicant scan for surrounding networks very often. This causes lots of latency spikes and visible lag.
Typing characters in an SSH session is rather laggy, and running something as simple as mtr 192.168.1.1 will show that every ~20 seconds the latency is over 100ms and packet loss occurs, while it's normally around 1.5ms with no packet loss. There are probably lots of other issues caused by this as well.
When a WiFi adapter scans for SSID's, it has to switch channels, delaying or dropping traffic in the meanwhile. This is what causes the lag and packet loss.
On phones connected to LTE this may make sense, but on a laptop which uses WiFi as its active network, this is detrimental to the connection.
Changing /etc/geoclue/geoclue.conf to disable WiFi scanning, solves this problem:
[wifi]
enable=false
On Ubuntu 18.04, this setting was the default. On Ubuntu 20.04, it has changed to 'true'.
Expected behaviour:
Don't break WiFi for a location scan.
$ lsb_release -rd
Description: Ubuntu 20.04 LTS
Release: 20.04
$ apt-cache policy geoclue-2.0
geoclue-2.0:
Installed: 2.5.6-0ubuntu1
Candidate: 2.5.6-0ubuntu1
Version table:
*** 2.5.6-0ubuntu1 500
500 http://nl.archive.ubuntu.com/ubuntu focal/main amd64 Packages
100 /var/lib/dpkg/status |
Steps to reproduce:
1. Install GNOME Weather, or GNOME Clocks, or basically anything that determines your location
2. In GNOME Control Center > Privacy, enable Location Services (note that I am unsure about this part; it may not even be necessary)
3. Open the application requesting your location
4. Do something latency-sensitive on WiFi, like SSH or ping
Hypothesis:
When an application requesting your location is running in the background and location services are enabled, it seems to tell geoclue to use NetworkManager's D-Bus API for letting wpasupplicant scan for surrounding networks very often. This causes lots of latency spikes and visible lag.
Typing characters in an SSH session is rather laggy, and running something as simple as mtr 192.168.1.1 will show that every ~20 seconds the latency is over 100ms and packet loss occurs, while it's normally around 1.5ms with no packet loss. There are probably lots of other issues caused by this as well.
When a WiFi adapter scans for SSID's, it has to switch channels, delaying or dropping traffic in the meanwhile. This is what causes the lag and packet loss.
On phones connected to LTE this may make sense, but on a laptop which uses WiFi as its active network, this is detrimental to the connection.
Changing /etc/geoclue/geoclue.conf to disable WiFi scanning, solves this problem:
[wifi]
enable=false
On Ubuntu 18.04, this setting was the default. On Ubuntu 20.04, it has changed to 'true'.
Expected behaviour:
Don't break WiFi for a location scan.
$ lsb_release -rd
Description: Ubuntu 20.04 LTS
Release: 20.04
$ apt-cache policy geoclue-2.0
geoclue-2.0:
Installed: 2.5.6-0ubuntu1
Candidate: 2.5.6-0ubuntu1
Version table:
*** 2.5.6-0ubuntu1 500
500 http://nl.archive.ubuntu.com/ubuntu focal/main amd64 Packages
100 /var/lib/dpkg/status |
|
2020-05-07 08:24:19 |
Sebastien Bacher |
geoclue-2.0 (Ubuntu): importance |
Undecided |
High |
|
2020-05-07 08:28:12 |
Sebastien Bacher |
tags |
|
desktop-lts-wishlist focal |
|
2020-05-07 10:45:10 |
Kevin Keijzer |
bug watch added |
|
https://gitlab.freedesktop.org/geoclue/geoclue/-/issues/129 |
|