Hi Stephen,
On 11/26/18 10:30 PM, Stephen Hemminger wrote:
Started testing DPDK support of Hyper-V in Fedora and discovered that it
doesn't work.
Looks like the multiq qdisc is not in the default Fedora kernel configuration.
Hopefully CentOS/RHEL don't have the same problem.
Not sure why SCH_MULTIQ is in the shipped kernel config files but not present.
Looks like a Fedora build or packaging issue.
# grep MULTIQ /boot/config*
/boot/config-4.18.13-200.fc28.x86_64:CONFIG_NET_SCH_MULTIQ=m
/boot/config-4.18.18-200.fc28.x86_64:CONFIG_NET_SCH_MULTIQ=m
/boot/config-4.19.2-200.fc28.x86_64:CONFIG_NET_SCH_MULTIQ=m
# modinfo sch_multiq
modinfo: ERROR: Module sch_multiq not found.
Seems to be present on RHEL 7.6:
# grep MULTIQ /boot/config*
/boot/config-3.10.0-927.el7.x86_64:CONFIG_NET_SCH_MULTIQ=m
/boot/config-3.10.0-933.el7.x86_64:CONFIG_NET_SCH_MULTIQ=m
# modinfo sch_multiq
filename:
/lib/modules/3.10.0-933.el7.x86_64/kernel/net/sched/sch_multiq.ko.xz
license: GPL
retpoline: Y
rhelversion: 7.6
srcversion: E65D76B5C459DE4C471B696
depends:
intree: Y
vermagic: 3.10.0-933.el7.x86_64 SMP mod_unload modversions
signer: Red Hat Enterprise Linux kernel signing key
sig_key: 51:AD:1E:39:2F:4C:2C:3D:D9:21:F2:2D:5E:F4:44:CF:93:BA:28:8C
sig_hashalgo: sha256
I also tried on Fedora 28, and confirm the module isn't installed.
Testpmd log is:
# dpdk-testpmd --log-level 8 --log-level 'pmd.net.failsafe:debug' -l 1,2 -n 4
-- -i
EAL: Detected 4 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: No free hugepages reported in hugepages-1048576kB
EAL: Probing VFIO support...
EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable
clock cycles !
EAL: PCI device a1e0:00:02.0 on NUMA socket 0
EAL: probe driver: 15b3:1014 net_mlx5
net_mlx5: MPLS over GRE/UDP tunnel offloading disabled due to old
OFED/rdma-core version or firmware configuration
net_failsafe: Initializing Fail-safe PMD for net_failsafe_vsc0
net_failsafe: Creating fail-safe device on NUMA socket 0
net_failsafe: a1e0:00:02.0
net_failsafe: net_tap_vsc0,remote=eth1
net_failsafe: Failsafe port 1 owner info: Fail-safe_0000000000000001
net_failsafe: Taking control of a probed sub device 0 named a1e0:00:02.0
rte_pmd_tap_probe(): Initializing pmd_tap for net_tap_vsc0 as dtap0
qdisc_create_multiq(): Could not add multiq qdisc (2): No such file or directory
eth_dev_tap_create(): dtap0: failed to create multiq qdisc.
eth_dev_tap_create(): Disabling rte flow support: No such file or directory(2)
eth_dev_tap_create(): Remote feature requires flow support.
eth_dev_tap_create(): TAP Unable to initialize net_tap_vsc0
EAL: Driver cannot attach the device (net_tap_vsc0)
EAL: Failed to attach device on primary process