[Bug 2003027] Re: fq_codel qdisc compiled but not enabled on 22.10
Launchpad Bug Tracker
2003027 at bugs.launchpad.net
Fri Aug 16 07:05:19 UTC 2024
This bug was fixed in the package procps - 2:4.0.4-4ubuntu4
---------------
procps (2:4.0.4-4ubuntu4) oracular; urgency=medium
* d/sysctl.d/10-bufferbloat.conf: set default qdisc to fq_codel (LP:
#2003027)
-- Heitor Alves de Siqueira <halves at canonical.com> Wed, 17 Jul 2024
14:59:18 +0000
** Changed in: procps (Ubuntu Oracular)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to procps in Ubuntu.
https://bugs.launchpad.net/bugs/2003027
Title:
fq_codel qdisc compiled but not enabled on 22.10
Status in Ubuntu:
Fix Committed
Status in procps package in Ubuntu:
Fix Released
Status in The Noble Numbat:
Confirmed
Status in procps source package in Noble:
In Progress
Status in The Oracular Oriole:
Fix Committed
Status in procps source package in Oracular:
Fix Released
Bug description:
[ Impact ]
Starting with Ubuntu 22.10, the default qdisc regressed to pfifo_fast. This is due to a change we merged from Debian, removing systemd's /usr/lib/50-default.conf file. pfifo_fast does not prevent bufferbloat issues, severely degrading networking performance on Ubuntu systems.
[ Test Plan ]
On an Ubuntu VM, check that net.core.default_qdisc is set to 'fq_codel'. `tc qdisc show` should also confirm fq_codel is being used.
halves at noble-vm:~$ sysctl net.core.default_qdisc
net.core.default_qdisc = fq_codel
halves at noble-vm:~$ tc qdisc show
qdisc noqueue 0: dev lo root refcnt 2
qdisc mq 0: dev enp5s0 root
qdisc fq_codel 0: dev enp5s0 parent :1 limit 10240p flows 1024 quantum 1514 target 5ms interval 100ms memory_limit 32Mb ecn drop_batch 64
[ Where Problems Could Occur ]
Users relying on the default pfifo_fast qdisc could see different networking behavior.
[ Other Info ]
Instead of adding a sysctl.conf file, Debian has decided to change their default kernel configs to use fq_codel. This has the disadvantage of being "hidden" from end users, instead of being a queryable setting in e.g. /etc/sysctl.d/, and all kernel documentation still refers to pfifo_fast as being the default.
Systemd's /usr/lib/50-default.conf file includes a lot of other
settings that are either overruled elsewhere (e.g. from procps) or are
entirely missing from our stable releases. Introducing a diff from
Debian to ship this file only for the net.core.default_qdisc changes
seems excessive, so having a dedicated place under procps where other
similar toggles are already present seems like the more appropriate
solution.
--
[ Original Description ]
fq_codel has been the default in ubuntu since #1436945
It is also now the default in debian. Somewhere between 22.04 and
22.10 though, it stopped being enabled by systemd? (it used to be
enabled there via a sysctl), and thus 22.10 (I tried both ubuntu
server and ubuntu studio) doesn't have it on. I rather *immediately*
noticed this huge regression (I run my ethernet at 100Mbit, and thus
immediately saw 400+ms latency) - and I hope it can be fixed in the
next release?
it can also be made the default via compiling it into the kernel as a
kernel default.
Aggh! death to fifos!
root at localhost:~# sysctl -a | grep qdisc
net.core.default_qdisc = pfifo_fast
disc pfifo_fast 0: dev eth0 parent :1 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 5250 bytes 53 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+bug/2003027/+subscriptions
More information about the foundations-bugs
mailing list