[dpdk-dev] Kernel Module dependency in DPDK 18.05-rc5 and earlier DPDK releases

Kevin Wilson wkevils at gmail.com
Fri May 25 11:55:00 CEST 2018


Hi,

I am facing the following issue in DPDK 18.05-rc5 (I saw it also with earlier
releases of DPDK from the last year). The issue is with defining
dependency on a kernel module in a PMD.
I want to develop a PMD which requiers that before running DPDK app which
uses this PMD, a specified kernel module is required to be insmoded.
I tried to add a call to RTE_PMD_REGISTER_KMOD_DEP in my PMD,
specifying a required
kernel module, and I expected that when calling a DPDK app which uses
this PMD it will shout that such a kernel module is not loaded, but this did not
happen.

So I took an existing kernel DPDK PMD (i40e), and I tried to add
dependency on the
link aggregation kernel module ("bonding.ko"). Again the same happened.

Am I missing something ?

I made two tries:
-RTE_PMD_REGISTER_KMOD_DEP(net_i40e, "* igb_uio | uio_pci_generic | vfio-pci");
+RTE_PMD_REGISTER_KMOD_DEP(net_i40e, "bonding");

And also
-RTE_PMD_REGISTER_KMOD_DEP(net_i40e, "* igb_uio | uio_pci_generic | vfio-pci");
+RTE_PMD_REGISTER_KMOD_DEP(net_i40e, "* bonding");

In both trials, I built the DPDK tree and ran testpmd, binding the i40e device
and using it with testpmd, and in both cases, bonding.ko was not loaded
(lsmod | grep bonding did not show anything).

In both cases, the testpmd app started OK, and no warning about
that bonding.ko was not loaded.

Any advise will be appreciated.

Regards,
KW


More information about the dev mailing list