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…

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.