[dpdk-dev] [RFC] Link ibrte_vhost to librte_pmd_vhost

Tetsuya Mukawa mukawa at igel.co.jp
Mon Apr 25 11:05:28 CEST 2016


Hi Yuanhan,

I want to apply a patch to vhost PMD.
Before submitting, could you please let me know your guess about the patch?

Here is my problem.
I am using below shared library configuration to build my application.
CONFIG_RTE_BUILD_SHARED_LIB=y
Normally, My application doesn't need vhost facilities, so librte_vhost
isn't linked while compiling.

Sometimes, I need to use vhost PMD, so I just want to add '-d
librte_pmd_vhost.so' to DPDK command line to load vhost PMD library.
But my application doesn't have librte_vhost, then I've got an error
about it.
Even if specify like "-d librte_vhost -d librte_pmd_vhost", I still have
an error.
Probably this is because above libraries will be dlopen(ed) with
RTLD_LOCAL option.

Here, I have 2 choices.
One is linking librte_vhost to my application while compiling, even if I
don't need it normally.
This is the way all DPDK examples did. But I am wondering if I should
follow this.

Another way is applying a below patch.
--- a/drivers/net/vhost/Makefile
+++ b/drivers/net/vhost/Makefile
@@ -38,6 +38,7 @@ LIB = librte_pmd_vhost.a

 CFLAGS += -O3
 CFLAGS += $(WERROR_FLAGS)
+LDLIBS += -lrte_vhost

 EXPORT_MAP := rte_pmd_vhost_version.map

This is same way to link libpcap to librte_pmd_pcap.
What do you think about adding it to vhost PMD?

Thanks,
Tetsuya


More information about the dev mailing list