From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wi0-f177.google.com (mail-wi0-f177.google.com [209.85.212.177]) by dpdk.org (Postfix) with ESMTP id BA28B4A6E for ; Mon, 10 Nov 2014 00:08:23 +0100 (CET) Received: by mail-wi0-f177.google.com with SMTP id ex7so8888322wid.4 for ; Sun, 09 Nov 2014 15:18:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:organization :user-agent:in-reply-to:references:mime-version :content-transfer-encoding:content-type; bh=1eO0gXOV0abdSo//qvuFK9iw8/97LAeWJ9Mvuh5gzBU=; b=g1WXvkkpa4xa10GRxj43pY+WJp7YGYyGzQbAtqF3rRAtXRTAOLCDeOmYCrD8GhTstN W7VxPMipZ8FvmNAfA4fQo0XRcuV9pE3FG2r6Uy0vIvRxOgq2q0bIgXWXFCn8ID1zVqQN D2oMjvrDjUlH8hnrpDYrTFoLGIQwf8tuKsFsQuJUNPzJ0+AlMlgKt5vZ7ELygwPrP66t 4Pw/0Ad26dvjEnMNtCZsxMxzTDhHEt8pDbXOtpkSPUcDlbK6tlWBAkkoy4f7oTd21FCK N143MTN11yhDouxfucxYasKjufv8l+ZOLlCuIN61YPLXMK1xqm3gg4SzK1OdR1dfgmxA RZzg== X-Gm-Message-State: ALoCoQliFeKpdMUWZrGK+wTla3P5cIjNsUzNjTQntBX+gm/3L1THmaQ7jB/LitSv88YjAhAyIkHm X-Received: by 10.194.243.164 with SMTP id wz4mr7548320wjc.129.1415575086431; Sun, 09 Nov 2014 15:18:06 -0800 (PST) Received: from xps13.localnet (136-92-190-109.dsl.ovh.fr. [109.190.92.136]) by mx.google.com with ESMTPSA id ll2sm8191541wjb.11.2014.11.09.15.18.04 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 09 Nov 2014 15:18:05 -0800 (PST) From: Thomas Monjalon To: dev@dpdk.org Date: Mon, 10 Nov 2014 00:17:47 +0100 Message-ID: <19938383.Nzijdctg6i@xps13> Organization: 6WIND User-Agent: KMail/4.14.2 (Linux/3.17.2-1-ARCH; KDE/4.14.2; x86_64; ; ) In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Cc: Aziz Hajee Subject: Re: [dpdk-dev] vmware vmxnet3-usermap AND DPDK VMXNET3 PMD X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Nov 2014 23:08:23 -0000 Hi, 2014-11-07 16:53, Patel, Rashmin N: > Yes, you're right DPDK VMXNET3-PMD in /lib/librte_pmd_vmxnet3 does not > support mbuf chaining today. But it's a standalone bsd driver just like > any other pmd in that directory, it does not need vmxnet3-usermap.ko module. > > Now there is another vmxnet3 solution in a separate branch as a plugin, > which must have vmxnet3-usermap.ko linux module(1), and a user space > interface piece(2) to tie it to any DPDK application in the main branch. > (1) and (2) makes the solution which is known as vmxnet3-plugin. It's been > there for a long time just like virtio-plugin, I don't know who uses it, > but community can *reply* here if there is still any need of a separate > solution that way. Coming back to last year, 6WIND developped some PMDs for virtio and vmxnet3. Later, Intel developped their own version using the uio framework. The versions in the main repository are the Intel ones, whereas the original ones from 6WIND are released as extensions. For completeness, it must be noted that Brocade worked on their own approach of vmxnet3 and contributed to virtio PMD. It's now time to merge all these implementations. The 6WIND implementations show that it's possible to avoid the uio framework. The virtio-net-pmd use port access granted by iopl(). The vmxnet3-usermap reuse the VMware's kernel module with a special mode for memory mapping. It was a pre-bifurcated logic. > I'm in favor of consolidating all those version into one elegant solution > by grabbing best features from all of them and maintain one copy. I'm sure > that developers contributing from VMware would also support that idea > because then it makes easy to maintain and debug and bug fix and most > importantly avoid such confusion in future. > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Aziz Hajee > Sent: Thursday, November 06, 2014 5:47 PM > To: dev@dpdk.org > Subject: [dpdk-dev] vmware vmxnet3-usermap AND DPDK VMXNET3 PMD > > I am using the dpdk1.6.0r1 > I could not find a complete clarification, sorry if missed. > VMXNET3 PMD > ============ > I have enabled the VMXNET3 PMD in the dpdk. > # Compile burst-oriented VMXNET3 PMD driver # > > CONFIG_RTE_LIBRTE_VMXNET3_PMD=y > CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_INIT=y > CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_RX=n > CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX=n > CONFIG_RTE_LIBRTE_VMXNET3_DEBUG_TX_FREE=n > The Intel DPDK VMXNET3 PMD driver does not support mbuf chaining, and I have to set NOMULTSEGS for the vmxnet3 interface init to succeed. > tx_conf.txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS Is there a later version of DPDK that supports multiseg for the dpdk > VMXNET3 PMD. > > vmware vmxnet3-usermap AND DPDK VMXNET3 PMD ========================================= > Is the vmxnet3-usermap.ko module driver also needed ? (appears that I need, otherwise the eal initialise fails. > sudo insmod ./vmxnet3-usermap.ko enable_shm=2,2 num_rqs=1,1 num_rxds=2048 > num_txds=2048 > > I do not understand if VMXNET3 PMD is there, what is the purpose of /vmxnet3-usermap.ko/vmxnet3-usermap.ko ? > > From some responses i saw that the following ifdef RTE_EAL_UNBIND_PORTS is also need to be removed in lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c ? > { > .name = "rte_vmxnet3_pmd", > .id_table = pci_id_vmxnet3_map, -#ifdef RTE_EAL_UNBIND_PORTS > +// #ifdef RTE_EAL_UNBIND_PORTS > .drv_flags = RTE_PCI_DRV_NEED_IGB_UIO, -#endif > +// #endif > }, > .eth_dev_init = eth_vmxnet3_dev_init, > .dev_private_size = sizeof(struct vmxnet3_adapter), > > thanks, > -aziz