When creating a ingress qdisc on our capture interface eth0 on Traffic Control :
ubuntu@host-1:~$ sudo tc qdisc add dev eth0 handle ffff: ingress
the system issues a message: “Error: Cannot find ingress queue for specified device”.
Device: Banana Pi BPI-R3 with MediaTek MT7986(Filogic 830)
OS : Ubuntu 22.04 (2022-12-18-ubuntu-22.04-server-bpi-r3-aarch64-sd-emmc.img)
$ grep 'CONFIG_NET_SCH' ../build/.config
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
# CONFIG_NET_SCH_HFSC is not set
CONFIG_NET_SCH_PRIO=m
# CONFIG_NET_SCH_MULTIQ is not set
CONFIG_NET_SCH_RED=m
# CONFIG_NET_SCH_SFB is not set
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
# CONFIG_NET_SCH_CBS is not set
# CONFIG_NET_SCH_ETF is not set
# CONFIG_NET_SCH_TAPRIO is not set
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
# CONFIG_NET_SCH_NETEM is not set
# CONFIG_NET_SCH_DRR is not set
# CONFIG_NET_SCH_MQPRIO is not set
# CONFIG_NET_SCH_SKBPRIO is not set
# CONFIG_NET_SCH_CHOKE is not set
# CONFIG_NET_SCH_QFQ is not set
# CONFIG_NET_SCH_CODEL is not set
CONFIG_NET_SCH_FQ_CODEL=y
# CONFIG_NET_SCH_CAKE is not set
# CONFIG_NET_SCH_FQ is not set
# CONFIG_NET_SCH_HHF is not set
# CONFIG_NET_SCH_PIE is not set
CONFIG_NET_SCH_INGRESS=m
# CONFIG_NET_SCH_PLUG is not set
# CONFIG_NET_SCH_ETS is not set
CONFIG_NET_SCH_DEFAULT=y
CONFIG_NET_SCH_FIFO=y
wonder whats missing when you use my ubuntu-image
You could do this too in running system with zgrep and /proc/config.gz
i do not get an error when running tc command on my ubuntu-image with updated (changes for wifi) kernel
root@bpi-r3:~# tc qdisc add dev wan handle ffff: ingress
root@bpi-r3:~# lsmod
Module Size Used by
sch_ingress 16384 1
...
root@bpi-r3:~# zgrep 'CONFIG_NET_SCH' /proc/config.gz
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
# CONFIG_NET_SCH_HFSC is not set
CONFIG_NET_SCH_PRIO=m
# CONFIG_NET_SCH_MULTIQ is not set
CONFIG_NET_SCH_RED=m
...
root@bpi-r3:~# root@bpi-r3:~# lsmod
Module Size Used by
ax88179_178a 32768 0
usbnet 40960 1 ax88179_178a
mii 20480 2 usbnet,ax88179_178a
fuse 126976 1
ip_tables 32768 0
x_tables 40960 1 ip_tables
root@bpi-r3:~# zgrep 'CONFIG_NET_SCH' /proc/config.gz
CONFIG_NET_SCHED=y
CONFIG_NET_SCH_CBQ=m
CONFIG_NET_SCH_HTB=m
# CONFIG_NET_SCH_HFSC is not set
CONFIG_NET_SCH_PRIO=m
# CONFIG_NET_SCH_MULTIQ is not set
CONFIG_NET_SCH_RED=m
# CONFIG_NET_SCH_SFB is not set
CONFIG_NET_SCH_SFQ=m
CONFIG_NET_SCH_TEQL=m
CONFIG_NET_SCH_TBF=m
# CONFIG_NET_SCH_CBS is not set
# CONFIG_NET_SCH_ETF is not set
# CONFIG_NET_SCH_TAPRIO is not set
CONFIG_NET_SCH_GRED=m
CONFIG_NET_SCH_DSMARK=m
# CONFIG_NET_SCH_NETEM is not set
# CONFIG_NET_SCH_DRR is not set
# CONFIG_NET_SCH_MQPRIO is not set
# CONFIG_NET_SCH_SKBPRIO is not set
# CONFIG_NET_SCH_CHOKE is not set
# CONFIG_NET_SCH_QFQ is not set
# CONFIG_NET_SCH_CODEL is not set
CONFIG_NET_SCH_FQ_CODEL=y
# CONFIG_NET_SCH_CAKE is not set
# CONFIG_NET_SCH_FQ is not set
# CONFIG_NET_SCH_HHF is not set
# CONFIG_NET_SCH_PIE is not set
CONFIG_NET_SCH_INGRESS=m
# CONFIG_NET_SCH_PLUG is not set
# CONFIG_NET_SCH_ETS is not set
CONFIG_NET_SCH_DEFAULT=y
CONFIG_NET_SCH_FIFO=y
root@bpi-r3:~# tc qdisc add dev wan handle ffff: ingress
root@bpi-r3:~# lsmod
Module Size Used by
cls_u32 24576 0
sch_ingress 16384 1
ax88179_178a 32768 0
usbnet 40960 1 ax88179_178a
mii 20480 2 usbnet,ax88179_178a
fuse 126976 1
ip_tables 32768 0
x_tables 40960 1 ip_tables
root@bpi-r3:~# sudo tc filter add dev wan parent ffff: protocol all u32 match u32 0 0 action mirred egress mirror dev eth1
Error: Failed to load TC action module.
We have an error talking to the kernel
root@bpi-r3:~#
Could you try enabling the other net_sch modules and try if all works?
Have not done much with tc
Edit: It looks the actions can have addition kernel symbols CONFIG_NET_ACT_*
edit2:
seems these are missing in my kernel…
$ grep 'CONFIG_NET_ACT_' ../build/.config
# CONFIG_NET_ACT_POLICE is not set
# CONFIG_NET_ACT_GACT is not set
# CONFIG_NET_ACT_MIRRED is not set
# CONFIG_NET_ACT_SAMPLE is not set
# CONFIG_NET_ACT_IPT is not set
# CONFIG_NET_ACT_NAT is not set
# CONFIG_NET_ACT_PEDIT is not set
# CONFIG_NET_ACT_SIMP is not set
# CONFIG_NET_ACT_SKBEDIT is not set
# CONFIG_NET_ACT_CSUM is not set
# CONFIG_NET_ACT_MPLS is not set
CONFIG_NET_ACT_VLAN=m
# CONFIG_NET_ACT_BPF is not set
# CONFIG_NET_ACT_CONNMARK is not set
# CONFIG_NET_ACT_CTINFO is not set
# CONFIG_NET_ACT_SKBMOD is not set
# CONFIG_NET_ACT_IFE is not set
# CONFIG_NET_ACT_TUNNEL_KEY is not set
# CONFIG_NET_ACT_CT is not set
# CONFIG_NET_ACT_GATE is not set
edit3: added a commit to add the most of them…github ci is currently building…then you can download the new version from releases page
Do you clone to a x86 device with enough ram? Looks like you clone to some kind of limited device (ram,disk space) which failes because the full repo is too big (afaik base repo is approx 8gb,with multiple remotes like i have and some local only branches i have 14gb).