From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9EA80A0546 for ; Wed, 26 May 2021 22:43:16 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 293EE40150; Wed, 26 May 2021 22:43:16 +0200 (CEST) Received: from mail-ej1-f53.google.com (mail-ej1-f53.google.com [209.85.218.53]) by mails.dpdk.org (Postfix) with ESMTP id 07C4B40143 for ; Wed, 26 May 2021 22:43:15 +0200 (CEST) Received: by mail-ej1-f53.google.com with SMTP id lg14so4530369ejb.9 for ; Wed, 26 May 2021 13:43:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=xKWxPZgyw25QlAXb9qmHyrlc22449gdxiN8B1FMo0kM=; b=iKIDla64kYr9GMNNAmUlrsm7X5m4ky11AxVqiIUP7epc1Gd1sOeF/Ys5fTw/I6u29h 1pyhTvPG0hX2WeD27d9eCfvhJcMbO6Fgq/c3kVH+E5uw5uytByEp7CN9u4iwtVerjBLa YE8g90UG6hPJaoWXXrUvAkE8yceEGccek3+1HKBG9SD8Ztj9yBU3Sb7bOzv4BLmjv1hK B/qm28775Zztf/ynb/SqWaIpbQZIf15xNuWE/9a0pemXB9fj/yo9DQRsc4u5fabD1rAA 0HgpCNd6e13auJ/KvGC7sP57eR3tvlk71FCOUiDuKztxkZ3F5mXd82xa0DglSoT/UTd/ WFyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=xKWxPZgyw25QlAXb9qmHyrlc22449gdxiN8B1FMo0kM=; b=ilXuMviODQftJNkm6/+ktNTYHCpRcc1kGhezXSPDNXG0H5JRGkl7+keWOM3dq2D4wz 88vnfj9Ljg40XV8266Pl/y5AtYi4NwaRIQWT503F1Q1if2WsDWZaCskAnRRw75pY3vTk 3rshGXfrVMbjrt9JbeKZROqm2W62nFHy9VXI6bOkn8KeavNdJlyNfuJB4bu7cbFYBpDr bo+i4fJK7WgBmf+oRGY0hBf8WaDDuYbWKAdiBy8HsaHYsKOCDtY9UZlVgKLYPIelh8+w Ch4nlg2gTyJqov0QbHWsMvMOjmZ7UdHr5vT7mK62GTB3YF6nRVGzPFWif7/D9So/hhoJ w52Q== X-Gm-Message-State: AOAM530cIaqqFuBTMAfRjBIzWi1c0e4oz68cJ33smPGegyWXkmI9pLsU tOwedyFJZTUG/vrRX1QGJ6ris3Keb10XaKL/bVc= X-Google-Smtp-Source: ABdhPJx1CzSRgr3ECGBm4JkdI4vw9QFH68n2Z4LUZGu34v0mruQZEfGMYr/JR5S2AGfdA+EM+qr29p6c7L9HukvK4is= X-Received: by 2002:a17:907:20d7:: with SMTP id qq23mr141122ejb.549.1622061794683; Wed, 26 May 2021 13:43:14 -0700 (PDT) MIME-Version: 1.0 References: <20210526105326.2b580fc7@hermes.local> <20210526130311.292c934a@hermes.local> In-Reply-To: From: Sudharshan Krishnakumar Date: Wed, 26 May 2021 13:43:03 -0700 Message-ID: To: Stephen Hemminger Cc: users@dpdk.org Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [dpdk-users] Issue moving to DPDK 20.11 release X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: users-bounces@dpdk.org Sender: "users" Stephen, Thanks for your help. Issue is resolved. -d option allows passing directory, where the shared libraries are located, in this case, if I pass -d /usr/local/lib/x86_64-linux-gnu/ that is good enough, it is able to pick the dependent libraries from there. ~/dpdk-20.11/examples/packet_ordering/build$ sudo ./packet_ordering -l 4-6 -n 2 --proc-type auto --log-level 7 -m 1024 --file-prefix packet_ordering -d /usr/local/lib/x86_64-linux-gnu/ -b 0000:31:00.0 -b 0000:31:00.1 -b 0000:05:00.0 -b 0000:06:00.0 -b 0000:07:00.0 -b 0000:08:00.0 -- -p 0xf --disable-reorder EAL: Detected 72 lcore(s)EAL: Detected 2 NUMA nodesEAL: Auto-detected process type: PRIMARYEAL: Multi-process socket /var/run/dpdk/packet_ordering/mp_socket EAL: Selected IOVA mode 'VA' EAL: No available hugepages reported in hugepages-1048576kB EAL: Probing VFIO support... EAL: VFIO support initialized EAL: using IOMMU type 1 (Type 1) EAL: Ignore mapping IO port bar(1) EAL: Ignore mapping IO port bar(4) EAL: Probe PCI driver: net_i40e (8086:1572) device: 0000:31:00.2 (socket 0) EAL: Ignore mapping IO port bar(1) EAL: Ignore mapping IO port bar(4) EAL: Probe PCI driver: net_i40e (8086:1572) device: 0000:31:00.3 (socket 0) EAL: No legacy callbacks, legacy socket not created reorder disabled Initializing port 0... done Port 0 MAC: 3c fd fe 9c 87 ba Initializing port 1... done Port 1 MAC: 3c fd fe 9c 87 bb REORDERAPP: worker_thread() started on lcore 5 REORDERAPP: tx_thread() started on lcore 6 REORDERAPP: rx_thread() started on lcore 4 Thanks, Sudha On Wed, May 26, 2021 at 1:27 PM Sudharshan Krishnakumar < sudhar.ckrishna@gmail.com> wrote: > Sure, yes that will be good way, if DPDK maintainers can resolve it. > In the meantime, do you recommend just building all the libraries > statically and have the application link statically to DPDK libraries. > > For example, DPDK doc for PMD , says -> When testpmd is built with shared > library, use option -d to load the dynamic PMD for rte_eal_init. > Link-> https://doc.dpdk.org/guides/nics/build_and_test.html > > In this case, eventhough I am including path to the PMD-> i40e and ALL the > dependant DPDK libraries(including mbuf and mempool libraries), it is > failing here: > --> RTE_LOG(ERR, MBUF, "error setting mempool handler\n"); > > if (mp_ops_name == NULL) > mp_ops_name = rte_mbuf_best_mempool_ops(); > ret = rte_mempool_set_ops_byname(mp, mp_ops_name, NULL); > if (ret != 0) { > RTE_LOG(ERR, MBUF, "error setting mempool handler\n"); > rte_mempool_free(mp); > rte_errno = -ret; > return NULL; > } > > > ~/dpdk-20.11/examples/packet_ordering/build$ sudo ./packet_ordering -l 4-6 > -n 2 --proc-type auto --log-level 7 -m 1024 --file-prefix packet_ordering > -d /usr/local/lib/x86_64-linux-gnu/librte_eal.so -d > /usr/local/lib/x86_64-linux-gnu/librte_net_i40e.so -d > /usr/local/lib/x86_64-linux-gnu/librte_reorder.so -d > /usr/local/lib/x86_64-linux-gnu/librte_ethdev.so -d > /usr/local/lib/x86_64-linux-gnu/librte_mempool.so.21 -d > /usr/local/lib/x86_64-linux-gnu/librte_mbuf.so -d > /usr/local/lib/x86_64-linux-gnu/librte_ring.so -d > /usr/lib/x86_64-linux-gnu/libnuma.so.1 -d > /usr/local/lib/x86_64-linux-gnu/librte_kvargs.so.21 -d > /usr/local/lib/x86_64-linux-gnu/librte_net.so.21 -d > /usr/local/lib/x86_64-linux-gnu/librte_meter.so.21 -b 0000:31:00.0 -b > 0000:31:00.1 -b 0000:05:00.0 -b 0000:06:00.0 -b 0000:07:00.0 -b > 0000:08:00.0 -- -p 0xf --disable-reorder > EAL: Detected 72 lcore(s) > EAL: Detected 2 NUMA nodes > EAL: Auto-detected process type: PRIMARY > EAL: Multi-process socket /var/run/dpdk/packet_ordering/mp_socket > EAL: Selected IOVA mode 'VA' > EAL: No available hugepages reported in hugepages-1048576kB > EAL: Probing VFIO support... > EAL: VFIO support initialized > EAL: using IOMMU type 1 (Type 1) > EAL: Ignore mapping IO port bar(1) > EAL: Ignore mapping IO port bar(4) > EAL: Probe PCI driver: net_i40e (8086:1572) device: 0000:31:00.2 (socket 0) > EAL: Ignore mapping IO port bar(1) > EAL: Ignore mapping IO port bar(4) > EAL: Probe PCI driver: net_i40e (8086:1572) device: 0000:31:00.3 (socket 0) > EAL: No legacy callbacks, legacy socket not created > reorder disabled > MBUF: error setting mempool handler > EAL: Error - exiting with code: 1 > Cause: Invalid argument > > > thanks, > > Sudha > > > On Wed, May 26, 2021 at 1:03 PM Stephen Hemminger < > stephen@networkplumber.org> wrote: > >> On Wed, 26 May 2021 12:41:21 -0700 >> Sudharshan Krishnakumar wrote: >> >> > Hi Stephen, >> > >> > Normal for dynamically linked shared libraries, linker should load the >> > dependant libraries >> > based on library path under-> /etc/ld.so.conf.d$ cat >> x86_64-linux-gnu.conf >> > # Multiarch support >> > /usr/local/lib/x86_64-linux-gnu >> > /lib/x86_64-linux-gnu >> > /usr/lib/x86_64-linux-gnu >> > >> > I do have the /usr/local/lib/x86* path, which is where DPDK 20.11 >> > shared(*.so) libraries have been installed. >> > But during launch of application, application does not seem to load >> those >> > libraries. Normally this method works. >> > Is this a DPDK issue. >> > >> > In any case, I followed your suggestion, did ldd -v >> packet_ordering-shared, >> > to get the dependencies, and manually passed the >> > paths to the application, but there is another error now-> MBUF: error >> > setting mempool handler >> > >> >> That is true for normal linked in libraries (ie what ldd shows). >> The DPDK is doing explicit dlopen to load poll-mode-drivers. >> >> I would prefer that DPDK was smarter in this area (more like the Linux >> kernel) >> so that it could have a catalog of PCI device vendor/id table and >> automatically >> load the PMD; but that capability is not part of the current versions. >> >> You have to do use -d to load the right .so >> >>