Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Need kernel flag CONFIG_NET_SCH_ for more qdisc type

Featured Replies

Currently unraid uses CONFIG_NET_SCH_DEFAULT=y for qdisc. However that makes CONFIG_NET_SCH_HTB not available, causing the following error

$ virsh net-start default
error: Failed to start network default
error: internal error: Child process (/sbin/tc qdisc add dev virbr0 root handle 1: htb default 2) unexpected exit status 2: Error: Specified qdisc kind is unknown.

 

Probably we can directly keep aligned with major Linux distributions on this config switch. Here's Ubuntu 24.04's related Kconfig, for reference :)

```

CONFIG_NET_SCH_CBQ=y
CONFIG_NET_SCH_HTB=y
CONFIG_NET_SCH_HFSC=y
CONFIG_NET_SCH_ATM=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_MULTIQ=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFB=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_CBS=y
CONFIG_NET_SCH_ETF=y
CONFIG_NET_SCH_TAPRIO=y
CONFIG_NET_SCH_GRED=y
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_NETEM=y
CONFIG_NET_SCH_DRR=y
CONFIG_NET_SCH_MQPRIO=y
CONFIG_NET_SCH_SKBPRIO=y
CONFIG_NET_SCH_CHOKE=y
CONFIG_NET_SCH_QFQ=y
CONFIG_NET_SCH_CODEL=y
CONFIG_NET_SCH_FQ_CODEL=y
CONFIG_NET_SCH_CAKE=y
CONFIG_NET_SCH_FQ=y
CONFIG_NET_SCH_HHF=y
CONFIG_NET_SCH_PIE=y
CONFIG_NET_SCH_FQ_PIE=y
CONFIG_NET_SCH_INGRESS=y
CONFIG_NET_SCH_PLUG=y
CONFIG_NET_SCH_ETS=y
# CONFIG_NET_SCH_DEFAULT is not set
CONFIG_NET_SCH_FIFO=y

```

On 4/14/2025 at 12:39 PM, Misty said:

Currently unraid uses CONFIG_NET_SCH_DEFAULT=y for qdisc. However that makes CONFIG_NET_SCH_HTB not available, causing the following error

$ virsh net-start default
error: Failed to start network default
error: internal error: Child process (/sbin/tc qdisc add dev virbr0 root handle 1: htb default 2) unexpected exit status 2: Error: Specified qdisc kind is unknown.

 

Probably we can directly keep aligned with major Linux distributions on this config switch. Here's Ubuntu 24.04's related Kconfig, for reference :)

```

CONFIG_NET_SCH_CBQ=y
CONFIG_NET_SCH_HTB=y
CONFIG_NET_SCH_HFSC=y
CONFIG_NET_SCH_ATM=y
CONFIG_NET_SCH_PRIO=y
CONFIG_NET_SCH_MULTIQ=y
CONFIG_NET_SCH_RED=y
CONFIG_NET_SCH_SFB=y
CONFIG_NET_SCH_SFQ=y
CONFIG_NET_SCH_TEQL=y
CONFIG_NET_SCH_TBF=y
CONFIG_NET_SCH_CBS=y
CONFIG_NET_SCH_ETF=y
CONFIG_NET_SCH_TAPRIO=y
CONFIG_NET_SCH_GRED=y
CONFIG_NET_SCH_DSMARK=y
CONFIG_NET_SCH_NETEM=y
CONFIG_NET_SCH_DRR=y
CONFIG_NET_SCH_MQPRIO=y
CONFIG_NET_SCH_SKBPRIO=y
CONFIG_NET_SCH_CHOKE=y
CONFIG_NET_SCH_QFQ=y
CONFIG_NET_SCH_CODEL=y
CONFIG_NET_SCH_FQ_CODEL=y
CONFIG_NET_SCH_CAKE=y
CONFIG_NET_SCH_FQ=y
CONFIG_NET_SCH_HHF=y
CONFIG_NET_SCH_PIE=y
CONFIG_NET_SCH_FQ_PIE=y
CONFIG_NET_SCH_INGRESS=y
CONFIG_NET_SCH_PLUG=y
CONFIG_NET_SCH_ETS=y
# CONFIG_NET_SCH_DEFAULT is not set
CONFIG_NET_SCH_FIFO=y

```

So have you modified the default network? Can you provide xml of changes you have made?

  • Author

Hi @SimonF I didn't modified the default network. Actually I've digged into libvirt's code, and the problem will occur when nftables was installed in the system (please see the `virNetDevBandWidthAddTxFilterParentQdisc` in the following source code).

https://github.com/libvirt/libvirt/blob/ac6519084c2036618c3625ea5738a7eeb052346a/src/network/network_nftables.c#L966

 

However, the code also shows that if someone wants to enable bandwidth limit in their network, it will also trigger the faulting command because bandwidth limit is also requiring HTB qdisc (see https://github.com/libvirt/libvirt/blob/c5a73f75bc6cae4f466d0a6344d5b3277ac9c2f4/src/util/virnetdevbandwidth.c#L269)😞

 

 

Considered that enabling bandwidth-limit related qdisc is a usual practice (see below), I believe the above Kconfig changes should be applied:

- Android: https://android.googlesource.com/kernel/configs/+/d0f6fd4b226244b0701cbc46c860f0077dd72c8e^1..d0f6fd4b226244b0701cbc46c860f0077dd72c8e/

- Debian/Alpine/Fedora/ArchLinux: https://hlandau.github.io/kconfigreport/option/CONFIG_NET_SCH_HTB.xhtml

- Others: https://oracle.github.io/kconfigs/?config=UTS_RELEASE&config=NET_SCH_HTB

Edited by Misty

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.