[dpdk-dev] [PATCH] ixgbe:Add write memory barrier for recv pkts.

2015-04-15 Thread Ananyev, Konstantin
> -Original Message- > From: outlook_739db8e1c4bc6fae at outlook.com > [mailto:outlook_739db8e1c4bc6fae at outlook.com] On Behalf Of Dong.Wang > Sent: Wednesday, April 15, 2015 2:46 PM > To: Ananyev, Konstantin; dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH] ixgbe:Add write memory bar

[dpdk-dev] [PATCH v2 2/2] use simple zero initializers

2015-04-15 Thread Thomas Monjalon
To initialize a structure with zeros, one field was explicitly set to avoid "missing initializer" bug with old GCC (e.g. 4.4). This warning is now disabled (commit ) for old versions of GCC, so the workarounds may be removed. These initializers should not be needed for static variables but they ar

[dpdk-dev] [PATCH v2 1/2] ixgbe: fix build with gcc 4.4

2015-04-15 Thread Thomas Monjalon
With GCC 4.4.7 from CentOS 6.5, the following errors arise: lib/librte_pmd_ixgbe/ixgbe_rxtx.c: In function ?ixgbe_dev_rx_queue_setup?: lib/librte_pmd_ixgbe/ixgbe_rxtx.c:2509: error: missing initializer lib/librte_pmd_ixgbe/ixgbe_rxtx.c:2509: error: (near initialization for ?dev_info.driver_name?)

[dpdk-dev] [PATCH 4/5] virtio: fix ring size negotiation

2015-04-15 Thread Stephen Hemminger
No warning is needed, it just works. On Wed, Apr 15, 2015 at 8:39 PM, Ouyang, Changchun < changchun.ouyang at intel.com> wrote: > > > > -Original Message- > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Stephen > > Hemminger > > Sent: Wednesday, April 15, 2015 11:20 PM > > To:

[dpdk-dev] [PATCH] ixgbe:Add write memory barrier for recv pkts.

2015-04-15 Thread Dong.Wang
> Hi, > >> -Original Message- >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of WangDong >> Sent: Saturday, April 11, 2015 4:34 PM >> To: dev at dpdk.org >> Subject: [dpdk-dev] [PATCH] ixgbe:Add write memory barrier for recv pkts. >> >> Like transmit packets, before update receiv

[dpdk-dev] mempool deleting and cache_size

2015-04-15 Thread Zoltan Kiss
Hi, I have two questions regarding mempools: - the first is trivial: how do you delete them? Can you? I can't see a function to do that, and none of the examples are doing such thing. When exactly it get deleted? - during creation, cache_size have one requirement: it has to be smaller than RTE

[dpdk-dev] Synchronize DPDK NICs using IEEE 1588 Precision Time Protocol (PTP)

2015-04-15 Thread Malveeka Tewari
Hi all, I have a DPDK app that requires tight time synchronization between end hosts. In my setup, the testbed is connected to a Cisco switch that supports the PTP protocol. I know that the ixgbe driver for Intel 82599 nics support the PTP time protocol, but I'm not sure if the DPDK framework supp

[dpdk-dev] dev Digest, Vol 22, Issue 37

2015-04-15 Thread Stephen Hemminger
On Wed, 15 Apr 2015 17:43:02 -0700 Kamraan Nasim wrote: > > > > This had me stumped for a while as well. In my case, PostGres9.4 was also > > running on my system which also used huge pages and came up before my DPDK > > application causing rte_mempool_create() to ENOMEM. > > > Check which othe

[dpdk-dev] dev Digest, Vol 22, Issue 37

2015-04-15 Thread Kamraan Nasim
> > This had me stumped for a while as well. In my case, PostGres9.4 was also > running on my system which also used huge pages and came up before my DPDK > application causing rte_mempool_create() to ENOMEM. Check which other applications are using huge pages: > lsof | grep huge And see if you

[dpdk-dev] Minimum Supported x86 microarchitecture

2015-04-15 Thread Bruce Richardson
On Wed, Apr 15, 2015 at 03:09:39PM +, Kavanagh, Mark B wrote: > Hi, > > The recent reimplementation of rte_memcpy in DPDK v2.0.0 seems to have a > placed an implicit floor on the microarchitecture/Instruction set supported > by DPDK. > > For example, I can't compile head of OVS against DPDK

[dpdk-dev] Minimum Supported x86 microarchitecture

2015-04-15 Thread Kavanagh, Mark B
>-Original Message- >From: Richardson, Bruce >Sent: Wednesday, April 15, 2015 5:05 PM >To: Kavanagh, Mark B >Cc: dev at dpdk.org >Subject: Re: [dpdk-dev] Minimum Supported x86 microarchitecture > >On Wed, Apr 15, 2015 at 03:09:39PM +, Kavanagh, Mark B wrote: >> Hi, >> >> The recent re

[dpdk-dev] [PATCH 3/3] mk: update app linking flags against shared libs

2015-04-15 Thread Gonzalez Monroy, Sergio
On 15/04/2015 10:30, Sergio Gonzalez Monroy wrote: > Use flag --as-needed when linking against shared libs, exluding > eal, malloc, mempool and ring as explained in: > 7cee5f6b4a9b ("lib: set LDLIBS for each library") Self-NACK. It is not correct to put the commit id here (it does not exist after

[dpdk-dev] Minimum Supported x86 microarchitecture

2015-04-15 Thread Kavanagh, Mark B
Hi, The recent reimplementation of rte_memcpy in DPDK v2.0.0 seems to have a placed an implicit floor on the microarchitecture/Instruction set supported by DPDK. For example, I can't compile head of OVS against DPDK 2.0 with gcc without passing the 'msse3' flag; this points to an implicit minim

[dpdk-dev] [RFC] Cuckoo hash for DPDK 2.1

2015-04-15 Thread De Lara Guarch, Pablo
Hi, > From: yangguangjerry at hotmail.com [mailto:yangguangjerry at hotmail.com] > Sent: Tuesday, April 07, 2015 10:46 AM > To: De Lara Guarch, Pablo > Cc: "dev at dpdk.org" > Subject: Re:[dpdk-dev] [RFC] Cuckoo hash for DPDK 2.1 > > > hi?Pablo, > ??? rte_hash uses Jenkins hash (http://burtlebur

[dpdk-dev] Where is rule_ipv4.db and rule_ipv6.db for l3pwd-acl example?

2015-04-15 Thread Liu, Yong
Hi, These rules parse failure for missing blank space between the start and end of port. Looks like user guide shown us the wrong format:) L3fwd-acl sample will request at least one route rule. You can just add one simple rule as below which forward all packets to port0. -bash-4.3# cat rule_ipv4

[dpdk-dev] [PATCH] Clean up rte_memcpy.h file

2015-04-15 Thread Ravi Kerur
On Tue, Apr 14, 2015 at 7:53 PM, Stephen Hemminger < stephen at networkplumber.org> wrote: > On Tue, 14 Apr 2015 14:31:53 -0700 > Ravi Kerur wrote: > > > + > > + for (i = 0; i < 2; i++) > > + rte_mov32(dst + i * 32, src + i * 32); > > } > Unless you force compiler to unroll the l

[dpdk-dev] [PATCH] Clean up rte_memcpy.h file

2015-04-15 Thread Ravi Kerur
On Tue, Apr 14, 2015 at 11:32 PM, Pawel Wodkowski < pawelx.wodkowski at intel.com> wrote: > On 2015-04-14 23:31, Ravi Kerur wrote: > >> + >> + for (i = 0; i < 8; i++) { >> + ymm = _mm256_loadu_si256((const __m256i *)(src + >> i * 32)); >> +

[dpdk-dev] can't build memnic pmd

2015-04-15 Thread Sowmini Varadhan
I am trying to build memnic-1.3/pmd on a qemu-kvm running 4.0.0-rc7+ with gcc 4.8.2, and it fails with a few errors, the first of which is /path/to/dpdk-2.0.0/build/include/rte_memcpy.h:625:2: error: implicit declaration of function ?_mm_alignr_epi8? [-Werror=implicit-function-declaration] MOVEUN

[dpdk-dev] mempool deleting and cache_size

2015-04-15 Thread Stephen Hemminger
On Wed, 15 Apr 2015 20:15:18 +0100 Zoltan Kiss wrote: > Hi, > > I have two questions regarding mempools: > > - the first is trivial: how do you delete them? Can you? I can't see a > function to do that, and none of the examples are doing such thing. When > exactly it get deleted? You can't d

[dpdk-dev] Where is rule_ipv4.db and rule_ipv6.db for l3pwd-acl example?

2015-04-15 Thread 황규민
Hi, I can`t find the rule format files (rule_ipv4.db and rule_ipv6.db) so I can`t run the access control example. I wrote my own rule file based on rule file example in the sample app document, but the example stopped saying that "Cause: ./ipv4.txt Line 1: parse rules error". My rule file likes be

[dpdk-dev] [PATCH 4/4] rte_ethdev: remove unnecessary paren on return

2015-04-15 Thread Bruce Richardson
On Thu, Apr 09, 2015 at 02:29:42PM -0700, Stephen Hemminger wrote: > The Linux style is not to put extra useless paren's around > the expression passed to return statement. > > Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson > --- > lib/librte_ether/rte_ethdev.c | 298 > ++

[dpdk-dev] [PATCH 3/4] rte_ethdev: make tables const

2015-04-15 Thread Bruce Richardson
On Thu, Apr 09, 2015 at 02:29:41PM -0700, Stephen Hemminger wrote: > The statistics tables and null mac address should be immutable. > Fix up get_addr routines to accept const args. > > Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson > --- > lib/librte_ether/rte_ethdev.c | 44 > +

[dpdk-dev] [PATCH 2/4] rte_ethdev: whitespace cleanup

2015-04-15 Thread Bruce Richardson
On Thu, Apr 09, 2015 at 02:29:40PM -0700, Stephen Hemminger wrote: > Fix space after keywords, and other missing whitespace. > > Signed-off-by: Stephen Hemminger Partial NAK for now. Mostly this looks ok, but I disagree with the changes to the indentation of continued lines. Until we get agreeme

[dpdk-dev] [PATCH 1/4] rte_ethdev: remove extra inline

2015-04-15 Thread Bruce Richardson
On Thu, Apr 09, 2015 at 02:29:39PM -0700, Stephen Hemminger wrote: > There is no reason to inline functions that are not in the critical > path. > > Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson > --- > lib/librte_ether/rte_ethdev.c | 12 ++-- > 1 file changed, 6 insertio

[dpdk-dev] freeze with dpdk-2.0.0

2015-04-15 Thread Olivier Deme
Hi Changchun, I confirm that blacklisting the first two network interfaces solve the problem. Just to be clear, is it the case that it is not possible to have a DPDK application acquiring selectively virtio network devices without using the blacklisting (-b) option? It seems a bit clumsy to ha

[dpdk-dev] [PATCH 2/2] tools: fix comment in bind script

2015-04-15 Thread Bruce Richardson
On Wed, Apr 08, 2015 at 10:37:50AM -0700, Stephen Hemminger wrote: > From: Stephen Hemminger > > The function documentation was obviously copied and not updated. > > Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson > --- > tools/dpdk_nic_bind.py | 2 +- > 1 file changed, 1 inserti

[dpdk-dev] [PATCH 3/3] mk: update app linking flags against shared libs

2015-04-15 Thread Sergio Gonzalez Monroy
Use flag --as-needed when linking against shared libs, exluding eal, malloc, mempool and ring as explained in: 7cee5f6b4a9b ("lib: set LDLIBS for each library") Signed-off-by: Sergio Gonzalez Monroy --- mk/rte.app.mk | 36 1 file changed, 20 insertions(+), 16

[dpdk-dev] [PATCH 2/3] mk: use LDLIBS when linking shared libraries

2015-04-15 Thread Sergio Gonzalez Monroy
Set proper DT_NEEDED entries for shared libraries by explicitly linking against its dependent libraries (LDLIBS). Signed-off-by: Sergio Gonzalez Monroy --- mk/rte.lib.mk | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk index 0d7482d..5d0988f

[dpdk-dev] [PATCH 1/3] lib: set LDLIBS for each library

2015-04-15 Thread Sergio Gonzalez Monroy
This patch introduces a new LDLIBS variable to be set per library. Its purpose is to especify the library's dependent libraries to be explicitly linked against. Given the circular dependencies between eal, malloc, mempool and ring, we work around it by not linking eal against its dependent DPDK li

[dpdk-dev] [PATCH 0/3] Add DT_NEEDED entries to shared libs

2015-04-15 Thread Sergio Gonzalez Monroy
This is a split of a previous series: http://dpdk.org/ml/archives/dev/2015-April/016257.html The series adds proper DT_NEEDED entries to each library when building shared libraries. The only exception is eal, which is not linked against its dependent dpdk libraries to avoid circular dependencies.

[dpdk-dev] [PATCH 2/2 dpdk] uio: fix pci generic driver breakage

2015-04-15 Thread Stephen Hemminger
The integration of using uio_pci_generic broke use of UIO by igb_uio and other drivers. Go back to using uio IRQ control through interrupt fd. This patch assumes that if uio_pci_generic is being used that the kernel has been fixed to support this by integrating patch to support IRQ control. Signe

[dpdk-dev] [PATCH 1/2 kernel] uio: add irq control support to uio_pci_generic

2015-04-15 Thread Stephen Hemminger
The driver already supported INTX interrupts but had no in kernel function to enable and disable them. It is possible for userspace to do this by accessing PCI config directly, but this racy and better handled by same mechanism that already exists in kernel. Signed-off-by: Stephen Hemminger ---

[dpdk-dev] Where is rule_ipv4.db and rule_ipv6.db for l3pwd-acl example?

2015-04-15 Thread Ananyev, Konstantin
Hi > -Original Message- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of ??? > Sent: Wednesday, April 15, 2015 3:40 AM > To: dev at dpdk.org > Subject: [dpdk-dev] Where is rule_ipv4.db and rule_ipv6.db for l3pwd-acl > example? > > Hi, > I can`t find the rule format files (rule_i

[dpdk-dev] [PATCH 0/2] fix UIO support broken by 2.0

2015-04-15 Thread Stephen Hemminger
Here is the correct way to fix it (even if it maybe hard to accept). I think the most technically correct way to handle this is to fix UIO driver in kernel to do the IRQ management according to the API that was already described in the kernel documentation. Then have the DPDK EAL use the IRQ manage

[dpdk-dev] [PATCH] ixgbe:Add write memory barrier for recv pkts.

2015-04-15 Thread Stephen Hemminger
On Wed, 15 Apr 2015 21:46:27 +0800 Dong.Wang wrote: > Yes, current implementation works well with IA, and the transmit packets > function's rte_wmb() is also unneccessary. > > But there are two reasons for adding rte_wmb() in recv pkts function: > 1) The memory barrier in recv pkts function and

[dpdk-dev] UIO pci-generic support broke igb_uio

2015-04-15 Thread Stephen Hemminger
On Wed, 15 Apr 2015 07:19:39 + "Zhou, Danny" wrote: > Could you please send out the steps for us to reproduce it? I guess you have > applied > v6 interrupt patches to perform interrupt related tests, right? > > We cannot reproduce it now. > > The support to in_kernel uio_pci_generic avoids

[dpdk-dev] [PATCH] Clean up rte_memcpy.h file

2015-04-15 Thread Pawel Wodkowski
On 2015-04-14 23:31, Ravi Kerur wrote: > + > + for (i = 0; i < 8; i++) { > + ymm = _mm256_loadu_si256((const __m256i *)(src + i * > 32)); > + _mm256_storeu_si256((__m256i *)(dst + i * 32), ymm); > + } > + > n -= 256; > -

[dpdk-dev] [PATCH 5/5] virtio: clarify feature bit handling

2015-04-15 Thread Stephen Hemminger
Change the features from bit mask to bit number. This allows the DPDK driver to use the definitions from Linux[1]. This makes doing enhancements to DPDK driver easier when new feature bits are added. More importantly, get rid of the confusing feature bit initialization code. Remove the double nega

[dpdk-dev] [PATCH 4/5] virtio: fix ring size negotiation

2015-04-15 Thread Stephen Hemminger
This fixes another of the issues with running virtio on non-KVM envirionments. For example, Google Compute Engine reports a ring size of 16K. If guest virtio requests more slots than available then the queue should just be initialized to the smaller value. Conversely, if the number of descriptors

[dpdk-dev] [PATCH 3/5] virtio: don't set mac table unless negotiated

2015-04-15 Thread Stephen Hemminger
Don't attempt to set the MAC address table unless the host allows it. Also, don't return a value from mac_table_set since all callers ignore the return value. Signed-off-by: Stephen Hemminger --- lib/librte_pmd_virtio/virtio_ethdev.c | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-)

[dpdk-dev] [PATCH 2/5] virtio: don't enable/disable rx modes unless supported

2015-04-15 Thread Stephen Hemminger
Don't try to set features related to receiving unless the appropriate feature bit has ben negotiated with the host. This solves some of the issues when using virtio on non-KVM/QEMU hypervisors. Signed-off-by: Stephen Hemminger --- lib/librte_pmd_virtio/virtio_ethdev.c | 20

[dpdk-dev] [PATCH 1/5] virtio: remove useless new lines

2015-04-15 Thread Stephen Hemminger
There are several places in virtio with extra newlines between calling a function and checking the result. Remove them to improve readability. Signed-off-by: Stephen Hemminger --- lib/librte_pmd_virtio/virtio_ethdev.c | 6 -- 1 file changed, 6 deletions(-) diff --git a/lib/librte_pmd_virtio

[dpdk-dev] [PATCH 0/5] virtio driver fixes and cleanup

2015-04-15 Thread Stephen Hemminger
These are cleanups and enhancements to virtio driver. The important fixes are those that allow virtio to work in non-KVM environments. The driver was not negotiating properly with the host. Stephen Hemminger (5): virtio: remove useless new lines virtio: don't enable/disable rx modes unless sup

[dpdk-dev] UIO pci-generic support broke igb_uio

2015-04-15 Thread Zhou, Danny
Could you please send out the steps for us to reproduce it? I guess you have applied v6 interrupt patches to perform interrupt related tests, right? We cannot reproduce it now. The support to in_kernel uio_pci_generic avoids using igb_uio this DPDK specific kernel module, so it will be much ea

[dpdk-dev] freeze with dpdk-2.0.0

2015-04-15 Thread Ouyang, Changchun
Hi Oliver > -Original Message- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Olivier Deme > Sent: Wednesday, April 15, 2015 1:16 AM > To: dev at dpdk.org > Subject: [dpdk-dev] freeze with dpdk-2.0.0 > > Hi, > > I am trying to use DPDK-2.0.0 on Fedora 20 running in a qemu virt