[dpdk-dev] Number of memory channels per processor socket?

2015-06-28 Thread Abhishek Verma
Hi, I am new to DPDK and i tried searching the archives in case this had been discussed but couldnt find any references and hence this email: What is the significance of " -n NUM: Number of memory channels per processor socket" which is passed as an EAL option? I have a virtual machine (VM) spawn

[dpdk-dev] Could not achieve wire speed for 40GE with any DPDK version on XL710 NIC's

2015-06-28 Thread Pavel Odintsov
Hello, folks! We have execute bunch of tests for receive data with Intel XL710 40GE NIC. We want to achieve wire speed on this platform for traffic capture. But we definitely can't do it. We tried with different versions of DPDK: 1.4, 1.6, 1.8, 2.0. And have not success. We achieved only 40Mpps

[dpdk-dev] [PATCH 1/2] eal:Introduce rte_dma_wmb/rte_dma_rmb.

2015-06-28 Thread WangDong
These macro can be used to replace current PMD's compiler memory barrier (volatile varible) and rte_wmb. In x86, they implement to compiler memory barrier. In power, they implement to processor memory barrier. --- .../common/include/arch/ppc_64/rte_atomic.h| 4 .../common/include/a

[dpdk-dev] [PATCH 1/2] eal:Introduce rte_dma_wmb/rte_dma_rmb.

2015-06-28 Thread WangDong
These macro can be used to replace current PMD's compiler memory barrier (volatile varible) and rte_wmb. In x86, they implement to compiler memory barrier. In power, they implement to processor memory barrier. --- .../common/include/arch/ppc_64/rte_atomic.h| 4 .../common/include/a

[dpdk-dev] [PATCH 2/2] ixgbe:replace compiler memory barrier and rte_wmb with rte_dma_rmb and rte_dma_wmb.

2015-06-28 Thread WangDong
--- drivers/net/ixgbe/ixgbe_rxtx.c | 30 +- drivers/net/ixgbe/ixgbe_rxtx_vec.c | 3 +++ 2 files changed, 12 insertions(+), 21 deletions(-) diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c b/drivers/net/ixgbe/ixgbe_rxtx.c index 3ace8a8..3316488 100644 --- a/drivers/net/

[dpdk-dev] RTM instruction compile failure for XABORT when AVX is active

2015-06-28 Thread Matthew Hall
Hi all, I am getting a strange error compiling some RTM instructions when I upgraded my VM environment from VirtualBox 4 to VirtualBox 5 and AVX instructions from the host CPU became available. However when I am reading the opcode description for XABORT it supposedly allows an immediate operand

[dpdk-dev] RTM instruction compile failure for XABORT when AVX is active

2015-06-28 Thread Matthew Hall
It would appear there is some bug in the new lock elision patches that is preventing it from compiling with clang. Any suggestions? On Jun 28, 2015, at 10:16 AM, Matthew Hall wrote: > Hi all, > > I am getting a strange error compiling some RTM instructions when I upgraded > my VM environment

[dpdk-dev] [PATCH v3 2/9] cxgbe: add cxgbe poll mode driver.

2015-06-28 Thread Thomas Monjalon
2015-06-18 17:47, Rahul Lakkireddy: > +Chelsio cxgbe > +M: Rahul Lakkireddy > +F: drivers/net/cxgbe/ > +F: doc/guides/nics/cxgbe.rst Just a detail: the doc file is added in a later patch. For consistency, this line should be added later. [...] > --- a/config/common_linuxapp > +++ b/config/common

[dpdk-dev] [PATCH v3 3/9] cxgbe: add device configuration and RX support for cxgbe PMD.

2015-06-28 Thread Thomas Monjalon
2015-06-18 17:47, Rahul Lakkireddy: > Adds RX support for the cxgbe poll mode driver. This patch: > > 1. Adds rx queue related eth_dev_ops. > 2. Adds RSS support. > 3. Adds dev_configure() and dev_infos_get() eth_dev_ops. > 4. Adds rx_pkt_burst for receiving packets. > > Signed-off-by: Rahul Lak

[dpdk-dev] RTM instruction compile failure for XABORT when AVX is active

2015-06-28 Thread Thomas Monjalon
2015-06-28 10:59, Matthew Hall: > It would appear there is some bug in the new lock elision patches that is > preventing it from compiling with clang. Any suggestions? It builds with clang. My suggestion is to add the patch author in recipient's list ;) > On Jun 28, 2015, at 10:16 AM, Matthew H

[dpdk-dev] [PATCHv3 2/3] rte_compat: Add MAP_STATIC_SYMBOL macro

2015-06-28 Thread Thomas Monjalon
2015-06-26 10:30, Neil Horman: > On Fri, Jun 26, 2015 at 02:52:50PM +0200, Thomas Monjalon wrote: > > 2015-06-25 10:35, Neil Horman: > > > +/* > > > + * MAP_STATIC_SYMBOL > > > + * If a function has been bifurcated into multiple versions, none of > > > which > > > + * are defined as the exported s

[dpdk-dev] [PATCHv3 3/3] ABI: Add some documentation

2015-06-28 Thread Thomas Monjalon
2015-06-26 10:54, Neil Horman: > On Fri, Jun 26, 2015 at 03:00:17PM +0200, Thomas Monjalon wrote: > > 2015-06-25 10:35, Neil Horman: > > > +* ``VERSION_SYMBOL(b, e, n)``: Creates a symbol version table entry > > > binding > > > + unversioned symbol ``b`` to the internal function ``b_e``. > > > >

[dpdk-dev] [PATCH v3 2/7] mbuf: use the reserved 16 bits for double vlan

2015-06-28 Thread Thomas Monjalon
Neil, Olivier, Your opinions are requested here. Thanks 2015-06-25 08:31, Zhang, Helin: > Hi Neil [...] > > -279,7 +285,7 @@ struct rte_mbuf { > > uint16_t data_len;/**< Amount of data in segment buffer. */ > > uint32_t pkt_len; /**< Total pkt len: sum of all segments. */ >

[dpdk-dev] [PATCH v2 0/8] Dynamic RSS Configuration for Bonding

2015-06-28 Thread Thomas Monjalon
2015-06-26 07:33, Doherty, Declan: > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Tomasz Kulasek > > Acked-by : Declan Doherty Please use checkpatch to fix formatting.

[dpdk-dev] [PATCH v2 08/11] hash: add new functionality to store data in hash table

2015-06-28 Thread De Lara Guarch, Pablo
Hi Stephen, > -Original Message- > From: Stephen Hemminger [mailto:stephen at networkplumber.org] > Sent: Friday, June 26, 2015 5:50 PM > To: De Lara Guarch, Pablo > Cc: dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH v2 08/11] hash: add new functionality to > store data in hash table >

[dpdk-dev] [PATCH v3 00/11] Cuckoo hash

2015-06-28 Thread Pablo de Lara
This patchset is to replace the existing hash library with a more efficient and functional approach, using the Cuckoo hash method to deal with collisions. This method is based on using two different hash functions to have two possible locations in the hash table where an entry can be. So, if a buck

[dpdk-dev] [PATCH v3 07/11] hash: add new function rte_hash_reset

2015-06-28 Thread Pablo de Lara
Added reset function to be able to empty the table, without having to destroy and create it again. Signed-off-by: Pablo de Lara --- app/test/test_hash.c | 3 +-- app/test/test_hash_perf.c| 11 +++ lib/librte_hash/rte_cuckoo_hash.c| 21

[dpdk-dev] [PATCH v3 02/11] hash: move rte_hash structure to C file and make it internal

2015-06-28 Thread Pablo de Lara
rte_hash structure should not be a public structure, and therefore it should be moved to the C file and be declared as internal. This patch also removes part of a unit test that was checking a field of the structure. Signed-off-by: Pablo de Lara --- app/test/test_hash.c | 6 +- lib/l

[dpdk-dev] [PATCH v3 06/11] hash: add new lookup_bulk_with_hash function

2015-06-28 Thread Pablo de Lara
Previous implementation was lacking a function to look up a burst of entries, given precalculated hash values. This patch implements such function, quite useful for looking up keys from packets that have precalculated hash values from a 5-tuple key. Added the function in the hash unit tests as wel

[dpdk-dev] [PATCH v3 01/11] eal: add const in prefetch functions

2015-06-28 Thread Pablo de Lara
rte_prefetchX functions included volatile void *p as parameter, but the function does not modify it, so it should include the const keyword. Signed-off-by: Pablo de Lara Acked-by: Bruce Richardson --- lib/librte_eal/common/include/arch/ppc_64/rte_prefetch.h | 6 +++--- lib/librte_eal/common/in

[dpdk-dev] [PATCH v3 09/11] MAINTAINERS: claim responsability for hash library

2015-06-28 Thread Pablo de Lara
Signed-off-by: Pablo de Lara --- MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/MAINTAINERS b/MAINTAINERS index 54f0973..a536992 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -339,6 +339,7 @@ F: doc/guides/sample_app_ug/l3_forward_access_ctrl.rst Hashes M: Bruce Richardson +M

[dpdk-dev] [PATCH v3 03/11] test/hash: enhance hash unit tests

2015-06-28 Thread Pablo de Lara
Add new unit test for calculating the average table utilization, using random keys, based on number of entries that can be added until we encounter one that cannot be added (bucket if full) Also, replace current hash_perf unit test to see performance more clear. The current hash_perf unit test tak

[dpdk-dev] [PATCH v3 10/11] doc: announce ABI change of librte_hash

2015-06-28 Thread Pablo de Lara
rte_hash structure is now private for version 2.1, and two of the macros in rte_hash.h are now deprecated, so this patch adds notice of these changes. Signed-off-by: Pablo de Lara --- doc/guides/rel_notes/abi.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/guides/rel_notes/abi.rst

[dpdk-dev] [PATCH v3 04/11] test/hash: rename new hash perf unit test back to original name

2015-06-28 Thread Pablo de Lara
To be able to see the diff more clear, new performance unit test was named differently from the old unit test. This patch renames the new unit test as the old one. Signed-off-by: Pablo de Lara --- app/test/Makefile | 2 +- app/test/test_hash_perf.c | 560 +++

[dpdk-dev] [PATCH v3 11/11] doc: update hash documentation

2015-06-28 Thread Pablo de Lara
Updates hash library documentation, reflecting the new implementation changes. Signed-off-by: Pablo de Lara --- doc/guides/prog_guide/hash_lib.rst | 77 +++--- 1 file changed, 64 insertions(+), 13 deletions(-) diff --git a/doc/guides/prog_guide/hash_lib.rst b/do

[dpdk-dev] [PATCH v3 08/11] hash: add new functionality to store data in hash table

2015-06-28 Thread Pablo de Lara
Usually hash tables not only store keys, but also data associated to them. In order to maintain the existing API, the key index will still be returned when adding/looking up/deleting an entry, but user will be able to store/look up data associated to a key. Unit tests have been updated to use thes

[dpdk-dev] [PATCH v3 05/11] hash: replace existing hash library with cuckoo hash implementation

2015-06-28 Thread Pablo de Lara
This patch replaces the existing hash library with another approach, using the Cuckoo Hash method to resolve collisions (open addressing), which pushes items from a full bucket when a new entry tries to be added in it, storing the evicted entry in an alternative location, using a secondary hash fun