From mboxrd@z Thu Jan 1 00:00:00 1970 From: Aws Ismail Subject: Re: [PATCH v9] drivers/net:new PMD using tun/tap host interface Date: Tue, 29 Nov 2016 16:36:42 -0500 Message-ID: References: <1474423220-10207-1-git-send-email-keith.wiles@intel.com> <1476396234-44694-1-git-send-email-keith.wiles@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Cc: Ferruh Yigit , DPDK To: Keith Wiles Return-path: Received: from mail-qk0-f194.google.com (mail-qk0-f194.google.com [209.85.220.194]) by dpdk.org (Postfix) with ESMTP id ABAD72C4F for ; Tue, 29 Nov 2016 22:37:03 +0100 (CET) Received: by mail-qk0-f194.google.com with SMTP id n204so19372557qke.2 for ; Tue, 29 Nov 2016 13:37:03 -0800 (PST) In-Reply-To: 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" I have verified that adding just a single tap device works with testpmd. But as soon as I try more than one tap device, I would get a coredump, e.g.= : root@ =E2=80=8Blocalhost :~# testpmd -c f -n 4 --socket-mem 512 --vdev=3Dnet_tap =E2=80=8B,iface=3Dtap0=E2=80=8B --vdev=3Dnet_tap =E2=80=8B,iface=3Dtap1=E2=80=8B -- -i EAL: Detected 16 lcore(s) EAL: Probing VFIO support... EAL: VFIO support initialized EAL: cannot open /proc/self/numa_maps, consider that all memory is in socket_id 0 PMD: Initializing pmd_tap for net_tap as dtap0 PMD: net_tap: Create TAP Ethernet device with 32 queues on numa 0 PMD: Initializing pmd_tap for net_tap as dtap1 PMD: net_tap: Create TAP Ethernet device with 32 queues on numa 0 EAL: failed to initialize net_tap device PANIC in rte_eal_init(): Cannot init pmd devices 6: [testpmd() [0x409149]] 5: [/lib/libc.so.6(__libc_start_main+0xf0) [0x7f3e65fa8740]] 4: [testpmd() [0x408b21]] 3: [/usr/lib/librte_eal.so.3.1(rte_eal_init+0xe09) [0x7f3e68ceaea9]] 2: [/usr/lib/librte_eal.so.3.1(__rte_panic+0xc0) [0x7f3e68ce9b5a]] 1: [/usr/lib/librte_eal.so.3.1(rte_dump_stack+0x18) [0x7f3e68cf2078]] Aborted (core dumped) root@ =E2=80=8Blocalhost=E2=80=8B :~# On Fri, Nov 25, 2016 at 2:38 PM, Aws Ismail wrote: > Keith, > > This won't build when integrated with v16.11. The register macro > prefix has been renamed. a v10 is needed. > > diff --git a/drivers/net/tap/rte_eth_tap.c b/drivers/net/tap/rte_eth_tap.= c > index 7f303db..297d4b6 100644 > --- a/drivers/net/tap/rte_eth_tap.c > +++ b/drivers/net/tap/rte_eth_tap.c > @@ -752,5 +752,6 @@ static struct rte_vdev_driver pmd_tap_drv =3D { > .remove =3D rte_pmd_tap_remove, > }; > > -DRIVER_REGISTER_VDEV(net_tap, pmd_tap_drv); > -DRIVER_REGISTER_PARAM_STRING(net_tap, "iface=3D,speed=3DN"); > +RTE_PMD_REGISTER_VDEV(net_tap, pmd_tap_drv); > +RTE_PMD_REGISTER_ALIAS(net_tap, eth_tap); > +RTE_PMD_REGISTER_PARAM_STRING(net_tap, "iface=3D,speed=3DN"); > > On Mon, Nov 21, 2016 at 7:56 AM, Ferruh Yigit > wrote: > > On 10/13/2016 11:03 PM, Keith Wiles wrote: > >> The rte_eth_tap.c PMD creates a device using TUN/TAP interfaces > >> on the local host. The PMD allows for DPDK and the host to > >> communicate using a raw device interface on the host and in > >> the DPDK application. The device created is a Tap device with > >> a L2 packet header. > >> > >> v9 - Fix up the docs to use correct syntax > >> v8 - Fix issue with tap_tx_queue_setup() not return zero on success. > >> v7 - Reword the comment in common_base and fix the data->name issue > >> v6 - fixed the checkpatch issues > >> v5 - merge in changes from list review see related emails > >> fixed many minor edits > >> v4 - merge with latest driver changes > >> v3 - fix includes by removing ifdef for other type besides Linux > >> Fix the copyright notice in the Makefile > >> v2 - merge all of the patches into one patch > >> Fix a typo on naming the tap device > >> Update the maintainers list > >> > >> Signed-off-by: Keith Wiles > >> --- > > > > Just a reminder, this is a new PMD and waiting for community review. >