Fq_pie as module

(delete whatever is the current qdisc)
tc qdisc del dev eno1 root
Error: Cannot delete qdisc with handle of zero.

2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.10.105/24 brd 192.168.10.255 scope global eno1

-ok, fq_codel is still there… no problem…

root@fedora ~# tc qdisc add dev eno1 root pfifo_fast
root@fedora ~# ip a | grep eno1
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
inet 192.168.10.105/24 brd 192.168.10.255 scope global eno1

  • ok I can change qdiscs…

root@fedora ~# tc qdisc del dev eno1 root
root@fedora ~# ip a | grep eno1
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
inet 192.168.10.105/24 brd 192.168.10.255 scope global eno1

  • ok when I delete it goes back to fq_codel…

root@fedora ~# sysctl -a | grep qdisc
net.core.default_qdisc = fq_codel

  • ok that’s why it goes back to fq_codel; great everything is normal…

root@fedora ~ [1]# modprobe sch_pie
root@fedora ~# modprobe fq_pie
modprobe: FATAL: Module fq_pie not found in directory /lib/modules/5.10.19-200.fc33.x86_64

man tc shows fq_pie and fq_codel

rpm -qa | grep iproute
iproute-tc-5.9.0-1.fc33.x86_64
iproute-5.9.0-1.fc33.x86_64

grep ‘^CONFIG_NET_SCH_’ /boot/config-$(uname -r)
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
CONFIG_NET_SCH_HFSC=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_PRIO=m
CONFIG_NET_SCH_MULTIQ=m
CONFIG_NET_SCH_RED=m
CONFIG_NET_SCH_SFB=m
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_ETF=m
CONFIG_NET_SCH_TAPRIO=m
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
CONFIG_NET_SCH_NETEM=m
CONFIG_NET_SCH_DRR=m
CONFIG_NET_SCH_MQPRIO=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_QFQ=m
CONFIG_NET_SCH_CODEL=m
CONFIG_NET_SCH_FQ_CODEL=y
CONFIG_NET_SCH_CAKE=m
CONFIG_NET_SCH_FQ=m
CONFIG_NET_SCH_HHF=m
CONFIG_NET_SCH_PIE=m
CONFIG_NET_SCH_INGRESS=m
CONFIG_NET_SCH_PLUG=m
CONFIG_NET_SCH_ETS=m
CONFIG_NET_SCH_FIFO=y

the only FQ I see if FQ_CODEL but I do see SCH_FQ

I do have a manjaro machine…

3: wlp0s20f3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_pie state UP group default qlen 1000
link/ether e0:d4:e8:56:78:b8 brd ff:ff:ff:ff:ff:ff

zgrep -i pie /proc/config.gz
CONFIG_NET_SCH_PIE=m
CONFIG_NET_SCH_FQ_PIE=m

Is there a way that I can build fq_pie as a module on my current fedora machine?

lwn shows fq_pie has been in iproute2 since 5.6 (fc33 is 5.9); looks like I just need a module…

Is there a place where I can find how to correctly do this? It looks as if there are things called Modules in fedora which are not kernel modules…

https://docs.fedoraproject.org/en-US/fedora/rawhide/system-administrators-guide/kernel-module-driver-configuration/Working_with_Kernel_Modules/

This looks to cover almost everything except building a module…

https://fedoraproject.org/wiki/Building_a_custom_kernel#Building_Only_Kernel_Modules_.28Out_Of_Tree_Modules.29

Is this the right page?

Is there a simpler way of doing this?

Or am I making this overly complicated…

Thanks in advance.