Hello,
On Thu, Jun 6, 2024 at 11:32 PM Nandini Rangaswamy
<nandini.rangaswamy@broadcom.com> wrote:
> I tried compiling the testpmd with DPDK netvsc for openwrt by setting CONFIG_RTE_LIBRTE_NETVSC_PMD=y .
>
> However, when I check ldd testpmd, it does not show any of the dpdk shared libraries including net_netvsc linked to testpmd binary.
> ldd dpdk-testpmd
> linux-vdso.so.1 (0x00007ffca1467000)
> libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ffb08134000)
> libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ffb0812f000)
> libelf.so.1 => /usr/lib/x86_64-linux-gnu/libelf.so.1 (0x00007ffb08111000)
> libpcap.so.1 => not found
> libmlx5.so.1 => /usr/lib/x86_64-linux-gnu/libmlx5.so.1 (0x00007ffb08093000)
> libibverbs.so.1 => /usr/lib/x86_64-linux-gnu/libibverbs.so.1 (0x00007ffb0806d000)
> libIPSec_MB.so.1 => not found
> libcrypto.so.3 => /usr/lib/x86_64-linux-gnu/libcrypto.so.3 (0x00007ffb07c29000)
> libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007ffb07c09000)
> libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ffb07c04000)
> libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ffb079db000)
> /lib64/ld-linux-x86-64.so.2 (0x00007ffb097c1000)
> libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007ffb079bd000)
> libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007ffb0793a000)
> libnl-3.so.200 => /lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007ffb07917000)
I am not sure what openwrt does wrt DPDK compilation, yet I can give some hints.
DPDK drivers are, by default, statically linked into dpdk binaries
like testpmd, so netvsc would not show up in this listing you tried.
On the other hand, if using dynamically linked drivers, testpmd is not
linked to them. Instead, those shared libraries are found
automatically (for a DPDK global install) or via the -d EAL option.
Then EAL loads those drivers via dlopen().
If you want to ensure that a specific driver is linked in, you may
inspect meson output (which lists enabled drivers), or have a try with
dpdk-pmd-info.py /path/to/dpdk-testpmd.
HTH,
--
David Marchand