From mboxrd@z Thu Jan 1 00:00:00 1970 From: Panu Matilainen Subject: Re: [RFC] Link ibrte_vhost to librte_pmd_vhost Date: Mon, 25 Apr 2016 12:28:37 +0300 Message-ID: <571DE345.4000609@redhat.com> References: <571DDDD8.6000000@igel.co.jp> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: "Xie, Huawei" To: Tetsuya Mukawa , "dev@dpdk.org" , Yuanhan Liu Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 2F90A2B87 for ; Mon, 25 Apr 2016 11:28:40 +0200 (CEST) In-Reply-To: <571DDDD8.6000000@igel.co.jp> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 04/25/2016 12:05 PM, Tetsuya Mukawa wrote: > 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? Yes, this is absolutely the right thing to do. Ultimately this should be done for all dependencies in all libraries, but missing dependencies are even more pronounced in plugins so the sooner this goes in, the better. Acked-by: Panu Matilainen - Panu - > > Thanks, > Tetsuya >