[dpdk-dev] lpm patches

2015-10-30 Thread Vladimir Medvedkin
Hi all, 2015-10-30 20:59 GMT+03:00 Matthew Hall : > On Fri, Oct 30, 2015 at 12:00:18PM +, Bruce Richardson wrote: > > Matthew's patches were attachments, I don't think they came through in > patchwork > > correctly :-(, but that is the relevant link there anyway.] > > Let me know if there is

[dpdk-dev] [PATCH 4/4 v4] add RX and TX selection function for FVL

2015-10-30 Thread Zhe Tao
To support FVL PMD can select which RX and TX function should be used according to the queue config. Signed-off-by: Zhe Tao --- doc/guides/rel_notes/release_2_2.rst | 4 + drivers/net/i40e/i40e_ethdev.c | 20 +++- drivers/net/i40e/i40e_ethdev.h | 6 ++ drivers/net/i40e/i40e_ethd

[dpdk-dev] [PATCH 3/4 v4] add vector PMD scatter RX for FVL

2015-10-30 Thread Zhe Tao
To support the multiple segments in one packets when the received pkts exceed one buffer size. Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx.c | 9 +++ drivers/net/i40e/i40e_rxtx.h | 3 + drivers/net/i40e/i40e_rxtx_vec.c | 118 --- 3 files

[dpdk-dev] [PATCH 2/4 v4] add vector PMD TX for FVL

2015-10-30 Thread Zhe Tao
The way to increase the performance of the vPMD TX is to use some fast mbuf release method compares to the scalar TX. Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx.c | 8 ++ drivers/net/i40e/i40e_rxtx.h | 3 + drivers/net/i40e/i40e_rxtx_vec.c | 163 ++

[dpdk-dev] [PATCH 1/4 v4] add vector PMD RX for FVL

2015-10-30 Thread Zhe Tao
The vPMD RX function uses the multi-buffer and SSE instructions to accelerate the RX speed, but now the pktype cannot be supported by the vPMD RX, because it will decrease the performance heavily. Signed-off-by: Zhe Tao --- config/common_bsdapp | 2 + config/common_linuxapp

[dpdk-dev] [PATCH 0/4 v4] i40e: add vector PMD support for FVL

2015-10-30 Thread Zhe Tao
This patch set add the vector PMD support for FVL. FVL vPMD works like the way ixgbe does All the functionality is tested PATCH v1: add the vector PMD support for FVL PATCH v2: remove the extra code out of share code change the prefetch position for splitter packets support u

[dpdk-dev] lpm patches

2015-10-30 Thread Bruce Richardson
On Fri, Oct 30, 2015 at 10:34:54PM +0300, Vladimir Medvedkin wrote: > Hi all, > > 2015-10-30 20:59 GMT+03:00 Matthew Hall : > > > On Fri, Oct 30, 2015 at 12:00:18PM +, Bruce Richardson wrote: > > > Matthew's patches were attachments, I don't think they came through in > > patchwork > > > corr

[dpdk-dev] [PATCH v2 2/2] lib/lpm:fix an initialization issue of valid_group in the delete_depth_small()

2015-10-30 Thread Jijiang Liu
Fixes an initialization issue of 'valid_group' in the delete_depth_small function. In this function, use new rte_lpm_tbl8_entry we call A to replace the old rte_lpm_tbl8_entry. But the valid_group do not set VALID, so it will be INVALID. Then when adding a new route which depth is > 24,the tbl

[dpdk-dev] [PATCH v2 1/2] lib/lpm:fix an issue of condition check in delete_depth_small()

2015-10-30 Thread Jijiang Liu
Fixes an issue of check logic in delete_depth_small function. For a tbl24 entry, the 'ext_entry' field indicates whether we need to use tbl8_gindex to read the next_hop from a tbl8 entry, or whether it can be read directly from this entry. If a route is deleted, the prefix of previous route is

[dpdk-dev] [PATCH v2 0/2] Fix two issues in lpm

2015-10-30 Thread Jijiang Liu
Fixes two issues in the delete_depth_small() function. v2 changes: Split a patch into two patches for two issues. Add more clear issue description. *** BLURB HERE *** Jijiang Liu (2): fix an issue of condition check in delete_depth_small(). fix an initialization issue of valid_group in

[dpdk-dev] [PATCH 4/4 v3] add RX and TX selection function for FVL

2015-10-30 Thread Zhe Tao
To support FVL PMD can select which RX and TX function should be used according to the queue config. Signed-off-by: Zhe Tao --- doc/guides/rel_notes/release_2_2.rst | 4 + drivers/net/i40e/i40e_ethdev.c | 20 +++- drivers/net/i40e/i40e_ethdev.h | 6 ++ drivers/net/i40e/i40e_ethd

[dpdk-dev] [PATCH 3/4 v3] add vector PMD scatter RX for FVL

2015-10-30 Thread Zhe Tao
To support the multiple segments in one packets when the received pkts exceed one buffer size. Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx.c | 9 drivers/net/i40e/i40e_rxtx.h | 3 ++ drivers/net/i40e/i40e_rxtx_vec.c | 103 +++ 3 fil

[dpdk-dev] [PATCH 2/4 v3] add vector PMD TX for FVL

2015-10-30 Thread Zhe Tao
The way to increase the performance of the vPMD TX is to use some fast mbuf release method compares to the scalar TX. Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx.c | 8 ++ drivers/net/i40e/i40e_rxtx.h | 3 + drivers/net/i40e/i40e_rxtx_vec.c | 162 ++

[dpdk-dev] [PATCH 1/4 v3] add vector PMD RX for FVL

2015-10-30 Thread Zhe Tao
The vPMD RX function uses the multi-buffer and SSE instructions to accelerate the RX speed, but now the pktype cannot be supported by the vPMD RX, because it will decrease the performance heavily. Signed-off-by: Zhe Tao --- config/common_bsdapp | 2 + config/common_linuxapp

[dpdk-dev] [PATCH 0/4 v3] i40e: add vector PMD support for FVL

2015-10-30 Thread Zhe Tao
This patch set add the vector PMD support for FVL. FVL vPMD works like the way ixgbe does All the functionality is tested PATCH v1: add the vector PMD support for FVL PATCH v2: remove the extra code out of share code change the prefetch position for splitter packets support u

[dpdk-dev] [PATCH v2 9/9] app/testpmd:modify MAC address of csum forwarding

2015-10-30 Thread Jijiang Liu
Modify MAC address of csum forwarding. The change will affect on the csum fwd performance. But I also think the change is necessary, or we cannot use csumonly fwd mode in a VM. Signed-off-by: Jijiang Liu --- app/test-pmd/csumonly.c |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-

[dpdk-dev] [PATCH v2 8/9] examples/vhost:support TX offload in vhost sample

2015-10-30 Thread Jijiang Liu
Change the vhost sample to support and test TX offload. Signed-off-by: Jijiang Liu --- examples/vhost/main.c | 128 ++--- 1 files changed, 111 insertions(+), 17 deletions(-) diff --git a/examples/vhost/main.c b/examples/vhost/main.c index 9eac2d0..06

[dpdk-dev] [PATCH v2 7/9] lib/librte_vhost:dequeue vhost TX offload

2015-10-30 Thread Jijiang Liu
Dequeue vhost TX offload in vhost lib. Signed-off-by: Jijiang Liu --- lib/librte_vhost/vhost_rxtx.c | 108 - 1 files changed, 107 insertions(+), 1 deletions(-) diff --git a/lib/librte_vhost/vhost_rxtx.c b/lib/librte_vhost/vhost_rxtx.c index 7026bfa..a888

[dpdk-dev] [PATCH v2 6/9] driver/virtio:enqueue vhost TX offload

2015-10-30 Thread Jijiang Liu
Enqueue vhost TX checksum and TSO4/6 offload in virtio-net lib. Signed-off-by: Jijiang Liu --- drivers/net/virtio/virtio_rxtx.c | 61 ++ 1 files changed, 61 insertions(+), 0 deletions(-) diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/vir

[dpdk-dev] [PATCH v2 5/9] driver/virtio:add vhost TSO support capability

2015-10-30 Thread Jijiang Liu
Add vhost TSO support capability in vhost lib. Signed-off-by: Jijiang Liu --- lib/librte_vhost/virtio-net.c |6 +- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/lib/librte_vhost/virtio-net.c b/lib/librte_vhost/virtio-net.c index d0f1764..a5989a2 100644 --- a/lib/librte_

[dpdk-dev] [PATCH v2 4/9] driver/virtio:fill virtio device info for TX offload

2015-10-30 Thread Jijiang Liu
Fill virtio device info for TX offload. Signed-off-by: Jijiang Liu --- drivers/net/virtio/virtio_ethdev.c | 10 ++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c index cb5dfee..b831c02 100644 ---

[dpdk-dev] [PATCH v2 3/9] driver/virtio:add vhost TX checksum support capability in virtio-net

2015-10-30 Thread Jijiang Liu
Add vhost TX checksum and TSO capabilities in virtio-net lib. Signed-off-by: Jijiang Liu --- drivers/net/virtio/virtio_ethdev.h |5 - 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/drivers/net/virtio/virtio_ethdev.h b/drivers/net/virtio/virtio_ethdev.h index 9026d42..6ee

[dpdk-dev] [PATCH v2 2/9] driver/virtio: record virtual address of virtio net header

2015-10-30 Thread Jijiang Liu
Record virtual address of virtio net header. Signed-off-by: Jijiang Liu --- drivers/net/virtio/virtio_ethdev.c |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c index 465d3cd..cb5dfee 100644 --- a/d

[dpdk-dev] [PATCH v2 1/9] driver/virtio:add virtual addr for virtio net header

2015-10-30 Thread Jijiang Liu
The virtual addr for virtio net header need to be recorded. Signed-off-by: Jijiang Liu --- drivers/net/virtio/virtqueue.h |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/drivers/net/virtio/virtqueue.h b/drivers/net/virtio/virtqueue.h index 7789411..530f840 100644 --- a/d

[dpdk-dev] [PATCH v2 0/9] add vhost TX offload support

2015-10-30 Thread Jijiang Liu
Adds vhost TX offload support. The patch set add the negotiation between us-vhost and virtio-net for vhost TX offload(checksum and TSO), and add the TX offload support in the libs and change vhost sample and csum application to test these changes. v2 change: fill virtio device information for

[dpdk-dev] [PATCH v6 0/3] vhost: eventfd_link refactoring

2015-10-30 Thread Thomas Monjalon
2015-10-29 18:33, Xie, Huawei: > On 10/29/2015 2:34 AM, Pavel Boldin wrote: > > The patchset contains an attempt at the refactoring the `eventfd_link` > > kernel module that is used to steal an FD in DPDK. > > > > The first patch refactors old EVENTFD_COPY handler fixing the codepath > > and errors

[dpdk-dev] [PATCH 3/3] mlx4: fix missing unlock in case of error

2015-10-30 Thread Adrien Mazarguil
Fixes: 7fae69eeff13 ("mlx4: new poll mode driver") Signed-off-by: Adrien Mazarguil --- drivers/net/mlx4/mlx4.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c index 3b25492..691e0e5 100644 --- a/drivers/net/mlx4/mlx4.c +++ b/drivers/net/mlx4/

[dpdk-dev] [PATCH 2/3] mlx4: do not complain about port state

2015-10-30 Thread Adrien Mazarguil
Port is considering inactive when the related netdevice is down. There is no reason to warn about it (and confuse users) since it's automatically brought up later by the PMD. Signed-off-by: Adrien Mazarguil --- drivers/net/mlx4/mlx4.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)

[dpdk-dev] [PATCH 1/3] mlx4: improve RX performance with better prefetching

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro Prefetching initial bytes of mbuf structures earlier and in two cache lines instead of one improves performance of mlx4_rx_burst(), which accesses the mbuf->next field not present in the first 128 bytes. Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx4/mlx4.c | 11 ++

[dpdk-dev] [PATCH v2 3/3] mlx5: RETA query/update support

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro ConnectX-4 is able to use indirection tables size of power of two, but with the current API it is impossible to predict its size, so to simplify, for any query/update RETA command, the indirection table is modified to use the maximum value. A port stop/start must be done t

[dpdk-dev] [PATCH v2 2/3] ethdev: change RETA type in rte_eth_rss_reta_entry64

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro Several NICs can handle 512 entries in their RETA table, an 8 bit field is not large enough for them. Signed-off-by: Nelio Laranjeiro --- lib/librte_ether/rte_ethdev.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librte_ether/rte_ethdev.h b/lib

[dpdk-dev] [PATCH v2 1/3] cmdline: increase command line buffer

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro For RETA query/update with a table of 512 entries, buffers are too small to handle the request. Signed-off-by: Nelio Laranjeiro --- lib/librte_cmdline/cmdline_parse.h| 2 +- lib/librte_cmdline/cmdline_parse_string.h | 2 +- lib/librte_cmdline/cmdline_rdline.h

[dpdk-dev] [PATCH v2 0/3] Add RETA configuration to mlx5

2015-10-30 Thread Adrien Mazarguil
mlx5 devices support indirection tables of variable size up to 512 entries, which requires a larger configuration structure (requiring a change in the ABI). This patchset can be considered as a first RFC step because the current API is not very practical due to the following limitations: - Config

[dpdk-dev] [PATCH v2 3/3] mlx5: handle interrupts

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro Add interrupts handler for port status notification. Signed-off-by: Nelio Laranjeiro Signed-off-by: Adrien Mazarguil --- drivers/net/mlx5/mlx5.c | 3 + drivers/net/mlx5/mlx5.h | 7 ++ drivers/net/mlx5/mlx5_defs.h| 3 + drivers/net/mlx5/mlx5_eth

[dpdk-dev] [PATCH v2 2/3] mlx4: handle interrupts

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro Add interrupts handler for port status notification. Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx4/mlx4.c | 166 drivers/net/mlx4/mlx4.h | 3 + 2 files changed, 169 insertions(+) diff --git a/drivers/net/mlx4/mlx

[dpdk-dev] [PATCH v2 1/3] eal: new interrupt handler type

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro Add RTE_INTR_HANDLE_EXT handler type for PMDs that do not support VFIO or UIO. Those are expected to manage the file descriptor themselves. Signed-off-by: Nelio Laranjeiro --- lib/librte_eal/linuxapp/eal/eal_interrupts.c | 34 -- .../linuxapp/e

[dpdk-dev] [PATCH v2 0/3] Add link status notification support to Mellanox PMDs

2015-10-30 Thread Adrien Mazarguil
Mellanox PMDs (mlx4 and mlx5) support link status notification with libibverbs through a file descriptor, in a manner reminiscent of UIO/VFIO. It still requires a new "external" interrupt handler type since contrary to other types, this file descriptor must not be processed by EAL. Changes in v2:

[dpdk-dev] [PATCH v2 16/16] doc: update mlx5 documentation

2015-10-30 Thread Adrien Mazarguil
Add new features related to Mellanox OFED 3.1 support. Signed-off-by: Adrien Mazarguil --- doc/guides/nics/mlx5.rst | 26 ++ 1 file changed, 26 insertions(+) diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst index fdb621c..2d68914 100644 --- a/doc/guides/n

[dpdk-dev] [PATCH v2 15/16] mlx5: fix compilation error with GCC < 4.6

2015-10-30 Thread Adrien Mazarguil
From: Yaacov Hazan Seen with GCC < 4.6: error: unknown field ?tcp_udp? specified in initializer error: extra brace group at end of initializer Static initialization of anonymous structs/unions is a C11 feature properly supported only since GCC 4.6. Work around compilation errors with older v

[dpdk-dev] [PATCH v2 14/16] mlx5: enable multi packet send WR in TX CQ

2015-10-30 Thread Adrien Mazarguil
For adapters that support it, this flag improves performance outside of VF context. Signed-off-by: Adrien Mazarguil --- drivers/net/mlx5/Makefile | 5 + drivers/net/mlx5/mlx5_txq.c | 7 +++ 2 files changed, 12 insertions(+) diff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Mak

[dpdk-dev] [PATCH v2 13/16] mlx5: add IPv6 RSS support using experimental flows

2015-10-30 Thread Adrien Mazarguil
Normal flows do not currently provide IPv6 support. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/Makefile | 4 +++ drivers/net/mlx5/mlx5_mac.c| 18 ++-- drivers/net/mlx5/mlx5_rxmode.c | 22 +++ drivers/net/mlx5/mlx5_rxq.c

[dpdk-dev] [PATCH v2 12/16] mlx5: disable useless flows in promiscuous mode

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro Only a single flow per hash RX queue is needed in promiscuous mode. Disable others to free up hardware resources. Signed-off-by: Nelio Laranjeiro Signed-off-by: Adrien Mazarguil Signed-off-by: Yaacov Hazan --- drivers/net/mlx5/mlx5_mac.c | 5 + drivers/net/mlx

[dpdk-dev] [PATCH v2 11/16] app/testpmd: fix missing initialization in the RSS hash show command

2015-10-30 Thread Adrien Mazarguil
The "show port X rss-hash" command sometimes displays garbage instead of the expected RSS hash key because the maximum key length is undefined. When the requested key is too large to fit in the buffer, rte_eth_dev_rss_hash_conf_get() does not update it. Signed-off-by: Adrien Mazarguil Signed-off-

[dpdk-dev] [PATCH v2 10/16] app/testpmd: add missing type to RSS hash commands

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro DPDK uses a structure to get or set a new hash key (see eth_rte_rss_hash_conf). rss_hf field from this structure is used in rss_hash_get_conf to retrieve the hash key and in rss_hash_update uses it to verify the key exists before trying to update it. Signed-off-by: Nelio

[dpdk-dev] [PATCH v2 09/16] mlx5: use one RSS hash key per flow type

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro DPDK expects to have an RSS hash key per flow type (IPv4, IPv6, UDPv4, etc.), to handle this the PMD must keep a table of hash keys to be able to reconfigure the queues at each start/stop call. Signed-off-by: Nelio Laranjeiro Signed-off-by: Adrien Mazarguil --- drivers/

[dpdk-dev] [PATCH v2 08/16] mlx5: add RSS hash update/get

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro First implementation of rss_hash_update and rss_hash_conf_get, those functions still lack in functionality but are usable to change the RSS hash key. For now, the PMD does not handle an indirection table for each kind of flow (IPv4, IPv6, etc.), the same RSS hash key is us

[dpdk-dev] [PATCH v2 07/16] mlx5: use alternate method to configure promisc and allmulti modes

2015-10-30 Thread Adrien Mazarguil
From: Olga Shern Promiscuous and allmulticast modes were historically enabled by adding specific flows with types IBV_FLOW_ATTR_ALL_DEFAULT or IBV_EXP_FLOW_ATTR_MC_DEFAULT to each hash RX queue, but this method is deprecated. - Promiscuous mode is now enabled by omitting destination MAC addresse

[dpdk-dev] [PATCH v2 06/16] mlx5: define specific flow steering rules for each hash RX QP

2015-10-30 Thread Adrien Mazarguil
From: Olga Shern All hash RX QPs currently use the same flow steering rule (L2 MAC filtering) regardless of their type (TCP, UDP, IPv4, IPv6), which prevents them from being dispatched properly. This is fixed by adding flow information to the hash RX queue initialization data and generating speci

[dpdk-dev] [PATCH v2 05/16] mlx5: adapt indirection table size depending on RX queues number

2015-10-30 Thread Adrien Mazarguil
From: Nelio Laranjeiro Use the maximum size of the indirection table when the number of requested RX queues is not a power of two, this help to improve RSS balancing. A message informs users that balancing is not optimal in such cases. Signed-off-by: Nelio Laranjeiro Signed-off-by: Adrien Maza

[dpdk-dev] [PATCH v2 04/16] mlx5: use separate indirection table for default hash RX queue

2015-10-30 Thread Adrien Mazarguil
From: Olga Shern The default hash RX queue handles packets that are not matched by more specific types and requires its own indirection table of size 1 to work properly. This commit implements support for multiple indirection tables by grouping their layout and properties in a static initializat

[dpdk-dev] [PATCH v2 03/16] mlx5: refactor RX code for the new Verbs RSS API

2015-10-30 Thread Adrien Mazarguil
The new Verbs RSS API is lower-level than the previous one and much more flexible but requires RX queues to use Work Queues (WQs) internally instead of Queue Pairs (QPs), which are grouped in an indirection table used by a new kind of hash RX QPs. Hash RX QPs and the indirection table together rep

[dpdk-dev] [PATCH v2 02/16] mlx5: get rid of the WR structure in RX queue elements

2015-10-30 Thread Adrien Mazarguil
Removing this structure reduces the size of SG and non-SG RX queue elements significantly to improve performance. An nice side effect is that the mbuf pointer is now fully stored in struct rxq_elt instead of relying on the WR ID data offset hack. Signed-off-by: Adrien Mazarguil Signed-off-by: Ol

[dpdk-dev] [PATCH v2 01/16] mlx5: use fast Verbs interface for scattered RX operation

2015-10-30 Thread Adrien Mazarguil
This commit updates mlx5_rx_burst_sp() to use the fast verbs interface for posting RX buffers just like mlx5_rx_burst(). Doing so avoids a loop in libmlx5 and an indirect function call through libibverbs. Note: recv_sg_list() is not implemented in the QP burst API, this commit is only to prepare t

[dpdk-dev] [PATCH v2 00/16] Enhance mlx5 with Mellanox OFED 3.1

2015-10-30 Thread Adrien Mazarguil
Mellanox OFED 3.1 [1] comes with improved APIs that Mellanox ConnectX-4 (mlx5) adapters can take advantage of, such as: - Separate post and doorbell operations on all queues. - Lightweight RX queues called Work Queues (WQs). - Low-level RSS indirection table and hash key configuration. This patch

[dpdk-dev] [PATCH v2 13/13] doc: add mlx5 documentation and release notes for version 2.2

2015-10-30 Thread Adrien Mazarguil
Signed-off-by: Adrien Mazarguil --- doc/guides/nics/mlx5.rst | 308 +++ doc/guides/rel_notes/release_2_2.rst | 9 + 2 files changed, 317 insertions(+) create mode 100644 doc/guides/nics/mlx5.rst diff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nic

[dpdk-dev] [PATCH v2 12/13] mlx5: add checksum offloading support

2015-10-30 Thread Adrien Mazarguil
This is the same implementation as mlx4. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/mlx5_rxq.c | 14 +++ drivers/net/mlx5/mlx5_rxtx.c | 94 +++ drivers/net/mlx5/mlx5_rxtx.h | 2 + drivers/net/mlx5/mlx5_ut

[dpdk-dev] [PATCH v2 11/13] mlx5: add VLAN filtering

2015-10-30 Thread Adrien Mazarguil
All MAC RX flows must be updated with VLAN information when configuring a VLAN filter. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/Makefile| 1 + drivers/net/mlx5/mlx5.c | 1 + drivers/net/mlx5/mlx5.h | 6 ++ drivers/net/mlx5/mlx5_def

[dpdk-dev] [PATCH v2 10/13] mlx5: add flow control device operations

2015-10-30 Thread Adrien Mazarguil
Like most other device control operations, those are handled by the related kernel network device through syscalls. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/mlx5.c| 2 + drivers/net/mlx5/mlx5.h| 2 + drivers/net/mlx5/mlx5_ethdev.c |

[dpdk-dev] [PATCH v2 09/13] mlx5: add link update device operation

2015-10-30 Thread Adrien Mazarguil
Link information is retrieved using ethtool ioctls. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/mlx5.c| 1 + drivers/net/mlx5/mlx5.h| 1 + drivers/net/mlx5/mlx5_ethdev.c | 71 ++ 3 files changed,

[dpdk-dev] [PATCH v2 08/13] mlx5: add promiscuous and allmulticast RX modes

2015-10-30 Thread Adrien Mazarguil
These modes require special non-MAC flows. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro Signed-off-by: Yaacov Hazan --- drivers/net/mlx5/Makefile | 1 + drivers/net/mlx5/mlx5.c | 4 + drivers/net/mlx5/mlx5.h | 13 ++ drivers/net/mlx5/mlx5_ethdev.c

[dpdk-dev] [PATCH v2 07/13] mlx5: add software counters and related callbacks

2015-10-30 Thread Adrien Mazarguil
Hardware counters are not supported yet. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/Makefile | 1 + drivers/net/mlx5/mlx5.c | 2 + drivers/net/mlx5/mlx5.h | 5 ++ drivers/net/mlx5/mlx5_defs.h | 8 +++ drivers/net/mlx5/mlx5_rxq.c

[dpdk-dev] [PATCH v2 06/13] mlx5: add MTU configuration support

2015-10-30 Thread Adrien Mazarguil
Depending on the MTU and whether jumbo frames are enabled, RX queues may switch between SG and non-SG modes for better performance. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/mlx5.c| 1 + drivers/net/mlx5/mlx5.h| 1 + drivers/net/mlx

[dpdk-dev] [PATCH v2 05/13] mlx5: add support for scattered RX and TX buffers

2015-10-30 Thread Adrien Mazarguil
A dedicated RX callback is added to handle scattered buffers. For better performance, it is only used when jumbo frames are enabled and MTU is larger than a single mbuf. On the TX path, scattered buffers are also handled in a separate function. When there are more than MLX5_PMD_SGE_WR_N segments i

[dpdk-dev] [PATCH v2 04/13] mlx5: add device configure/start/stop

2015-10-30 Thread Adrien Mazarguil
This commit adds the remaining missing callbacks to make mlx5 usable. Like mlx4, device start and stop are implemented on top of MAC RX flows. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro Signed-off-by: Francesco Santoro Signed-off-by: Didier Pallard --- drivers/net/mlx5/Ma

[dpdk-dev] [PATCH v2 03/13] mlx5: add MAC handling

2015-10-30 Thread Adrien Mazarguil
This commit adds support for MAC flow steering rules mandatory for the RX path as well as the related callbacks to add/remove MAC addresses. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro Signed-off-by: Didier Pallard --- drivers/net/mlx5/mlx5.c | 4 +- drivers/net/mlx5

[dpdk-dev] [PATCH v2 02/13] mlx5: add non-scattered TX and RX support

2015-10-30 Thread Adrien Mazarguil
RSS implementation with parent/child QPs comes from mlx4 and is temporary. Signed-off-by: Adrien Mazarguil Signed-off-by: Nelio Laranjeiro --- config/common_bsdapp | 3 + config/common_linuxapp| 3 + drivers/net/mlx5/Makefile | 15 + drivers/net/mlx5/mlx5.c | 40

[dpdk-dev] [PATCH v2 01/13] mlx5: new poll-mode driver for Mellanox ConnectX-4 adapters

2015-10-30 Thread Adrien Mazarguil
In its current state, this driver implements the bare minimum to initialize itself and Mellanox ConnectX-4 adapters without doing anything else (no RX/TX for instance). It is disabled by default since it is based on the mlx4 driver and also depends on libibverbs. Signed-off-by: Adrien Mazarguil S

[dpdk-dev] [PATCH v2 00/13] Mellanox ConnectX-4 PMD (mlx5)

2015-10-30 Thread Adrien Mazarguil
This PMD adds basic support for Mellanox ConnectX-4 (mlx5) families of 10/25/40/50/100 Gb/s adapters through the Verbs framework. Its design is very similar to that of mlx4 from which most of its code is borrowed without the mistake of putting it all in a single huge file. It is disabled by defau

[dpdk-dev] [PATCH 0/3] Add VHOST PMD

2015-10-30 Thread Thomas Monjalon
2015-10-27 16:54, Tetsuya Mukawa: > Below patch has been submitted as a separate patch. > > - [dpdk-dev,1/3] vhost: Fix wrong handling of virtqueue array index > (http://dpdk.org/dev/patchwork/patch/8038/) Please could you rebase only the two last patches? Thanks PS: WARNING:TYPO_SPELLING:

[dpdk-dev] [PATCH v6 5/8] virtio: virtio vec rx

2015-10-30 Thread Thomas Monjalon
Sorry, there is a clang error. 2015-10-29 22:53, Huawei Xie: > + _mm_prefetch((const void *)rused, _MM_HINT_T0); virtio_rxtx_simple.c:197:2: error: cast from 'const void *' to 'void *' drops const qualifier

[dpdk-dev] [PATCH v6 2/8] virtio: add software rx ring, fake_buf into virtqueue

2015-10-30 Thread Thomas Monjalon
2015-10-29 22:53, Huawei Xie: > +static int use_simple_rxtx; error: ?use_simple_rxtx? defined but not used I'll try to move it in the next patch.

[dpdk-dev] [PATCH 3/5] virtio: use indirect ring elements

2015-10-30 Thread Thomas Monjalon
Sorry there is a gcc error. 2015-10-18 22:16, Stephen Hemminger: > + for (i = 0; i < vq_size; i++) { virtio_ethdev.c:386:17: error: comparison between signed and unsigned integer expressions

[dpdk-dev] Hyper-V Driver

2015-10-30 Thread John McDowall
I see that the Hyper-V driver is on the roadmap for 2.2. I do not see any code yet in the git development branch or patchwork. So two questions: 1. Is it likely we are going to see Hyper-V support in 2.2? 2. If we do see Hyper-V support in 2.2 will it support Rx Interrupt? Regards John

[dpdk-dev] [PATCH 8/8 v2] update the release note

2015-10-30 Thread Zhe Tao
update the release note Signed-off-by: Zhe Tao --- doc/guides/rel_notes/release_2_2.rst | 4 1 file changed, 4 insertions(+) diff --git a/doc/guides/rel_notes/release_2_2.rst b/doc/guides/rel_notes/release_2_2.rst index bc9b00f..c78ceca 100644 --- a/doc/guides/rel_notes/release_2_2.rst ++

[dpdk-dev] [PATCH 7/8 v2] move all the extra definition out of share code

2015-10-30 Thread Zhe Tao
move all the exta definition out of share code Signed-off-by: Zhe Tao --- drivers/net/i40e/base/i40e_type.h | 13 - drivers/net/i40e/i40e_ethdev.c| 11 ++- drivers/net/i40e/i40e_ethdev.h| 6 ++ drivers/net/i40e/i40e_ethdev_vf.c | 11 ++- drivers/net/i40e/

[dpdk-dev] [PATCH 6/8 v2] change the postion of data prefetch for splitter packets

2015-10-30 Thread Zhe Tao
according to ixgbe vector implementation, change the data prefetch position Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx_vec.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/net/i40e/i40e_rxtx_vec.c b/drivers/net/i40e/i40e_rxtx_vec.c index 6f8

[dpdk-dev] [PATCH 5/8 v2] edit the comments

2015-10-30 Thread Zhe Tao
edit the comments for the minimum packets support for vector RX Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx_vec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/i40e_rxtx_vec.c b/drivers/net/i40e/i40e_rxtx_vec.c index b2993e9..6f89002 100644 --- a/

[dpdk-dev] [PATCH 4/8 v2] add RX and TX selection function for FVL

2015-10-30 Thread Zhe Tao
To support FVL PMD can select which RX and TX function should be used according to the queue config. Signed-off-by: Zhe Tao --- drivers/net/i40e/base/i40e_type.h | 10 +++ drivers/net/i40e/i40e_ethdev.c| 19 +++- drivers/net/i40e/i40e_ethdev_vf.c | 27 -- drivers/net/i40e/i40e_rxtx.c

[dpdk-dev] [PATCH 3/8 v2] add vector PMD scatter RX for FVL

2015-10-30 Thread Zhe Tao
To support the multiple segments in one packets when the received pkts exceed one buffer size. Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx.c | 9 drivers/net/i40e/i40e_rxtx.h | 3 ++ drivers/net/i40e/i40e_rxtx_vec.c | 103 +++ 3 fil

[dpdk-dev] [PATCH 2/8 v2] add vector PMD TX for FVL

2015-10-30 Thread Zhe Tao
The way to increase the performance of the vPMD TX is to use some fast mbuf release method compares to the scalar TX. Signed-off-by: Zhe Tao --- drivers/net/i40e/i40e_rxtx.c | 8 ++ drivers/net/i40e/i40e_rxtx.h | 3 + drivers/net/i40e/i40e_rxtx_vec.c | 162 ++

[dpdk-dev] [PATCH 1/8 v2] add vector PMD RX for FVL

2015-10-30 Thread Zhe Tao
The vPMD RX function uses the multi-buffer and SSE instructions to accelerate the RX speed, but now the pktype cannot be supported by the vPMD RX, because it will decrease the performance heavily. Signed-off-by: Zhe Tao --- config/common_bsdapp | 2 + config/common_linuxapp

[dpdk-dev] [PATCH 0/8 v2] i40e: add vector PMD support for FVL

2015-10-30 Thread Zhe Tao
This patch set add the vector PMD support for FVL. FVL vPMD works like the way ixgbe does All the functionality is tested Zhe Tao (8): add vector PMD RX for FVL add vector PMD TX for FVL add vector PMD scatter RX for FVL add RX and TX selection function for FVL edit the comments chang

[dpdk-dev] [PATCH] vhost-user: enable virtio 1.0

2015-10-30 Thread Thomas Monjalon
2015-10-18 10:04, Michael S. Tsirkin: > On Fri, Oct 16, 2015 at 02:52:30PM +0100, Bruce Richardson wrote: > > On Thu, Oct 15, 2015 at 04:18:59PM +0300, Michael S. Tsirkin wrote: > > > On Thu, Oct 15, 2015 at 02:08:39PM +0300, Marcel Apfelbaum wrote: > > > > Make vhost-user virtio 1.0 compatible by

[dpdk-dev] [PATCH v3] enic: improve Tx packet rate

2015-10-30 Thread Thomas Monjalon
2015-10-29 11:45, John Daley: > For every packet sent, a completion was being requested and the > posted_index register on the nic was being updated. Instead, request a > completion and update the posted index once per burst after all > packets have been sent by the burst function. > > Acked-by: S

[dpdk-dev] [PATCH v2 1/1] vhost_xen: fix compile error in main.c

2015-10-30 Thread Thomas Monjalon
2015-10-30 17:07, Iremonger, Bernard: > Hi Thomas, > > > -Original Message- > > From: Thomas Monjalon [mailto:thomas.monjalon at 6wind.com] > > Sent: Friday, October 30, 2015 5:01 PM > > To: Iremonger, Bernard > > Cc: dev at dpdk.org > > Subject: Re: [dpdk-dev] [PATCH v2 1/1] vhost_xen: f

[dpdk-dev] Status of bnx2x pmd?

2015-10-30 Thread Mussar, Gary
I have been attempting to build testpmd with the bnx2x pmd enabled to try and talk through a bcm57810 10G NIC card. I have tried using SR-IOV VFs and I have tried using the PFs. Neither seem to be able to be properly initialized in testpmd and/or testpmd aborts. Is this PMD actually usable or i

[dpdk-dev] [PATCH v2 1/1] vhost_xen: fix compile error in main.c

2015-10-30 Thread Thomas Monjalon
2015-10-22 14:21, Bernard Iremonger: > changes in v2: > update release notes > > Signed-off-by: Bernard Iremonger Please what is the error? > - rte_memcpy((void *)(uintptr_t)buff_hdr_addr, (const > void*)&virtio_hdr, vq->vhost_hlen); > + rte_memcpy((void *)(uintptr_t)bu

[dpdk-dev] Proposals from project governance meeting at DPDK Userspace (was Notes from ...)

2015-10-30 Thread Bagh Fares
Hi dave My name is Fares Bagh. I am from Freescale networking division. We are very interested and supportive in the proposal below. Our main interest is enabling HW acceleration options for our customers starting with crypto function. We like to have a road map for acceleration beyond crypto. We

[dpdk-dev] [PATCH v2 0/2] xenvirt hotplug support

2015-10-30 Thread Thomas Monjalon
2015-10-30 05:42, Xie, Huawei: > On 10/28/2015 12:07 AM, Bernard Iremonger wrote: > > add Port Hotplug support to the xenvirt PMD > > > > This patch depends on v5 of the following patch set: > > > > remove-pci-driver-from-vdevs.patch > > > > Changes in v2: > > Rebase > > Update release notes. > Ac

[dpdk-dev] [PATCH 2/3] vhost: Add callback and private data for vhost PMD

2015-10-30 Thread Loftus, Ciara
> > These variables are needed to be able to manage one of virtio devices > using both vhost library APIs and vhost PMD. > For example, if vhost PMD uses current callback handler and private data > provided by vhost library, A DPDK application that links vhost library > cannot use some of vhost li

[dpdk-dev] [PATCH 1/2] scripts: add checkpatch wrapper

2015-10-30 Thread Thomas Monjalon
2015-10-30 16:16, Bruce Richardson: > Another request, can you perhaps also fix the script for situations where > checkpatch.pl is not in the kernel tree. I've used this script now to check a > couple of patchsets, which came back clean, but it turns out that because I > was > using checkpatch.pl

[dpdk-dev] [PATCH] doc: update user guide about e1000em limitations

2015-10-30 Thread Yong Liu
Update interrupt related limitations for e1000em nic. It only support one interrupt source and not support auto-clear. Signed-off-by: Marvin Liu diff --git a/doc/guides/nics/e1000em.rst b/doc/guides/nics/e1000em.rst index fedafad..a84e8e1 100644 --- a/doc/guides/nics/e1000em.rst +++ b/doc/guides

[dpdk-dev] [PATCH v3 2/4] fm10k: add VMDQ support in MAC/VLAN filter

2015-10-30 Thread Thomas Monjalon
Sorry it does not compile with clang. 2015-10-27 17:21, Shaopeng He: > + for (i = 0; i < (int)vmdq_conf->nb_pool_maps; i++) { fm10k_ethdev.c:1168:16: error: comparison of integers of different signs: 'uint32_t' (aka 'unsigned int') and 'int' [-Werror,-Wsign-compare]

[dpdk-dev] [PATCH] igbvf: fix vlan filtering

2015-10-30 Thread David Marchand
From: Julien Meunier Once posted through mailbox, we must check for nack from the PF and report an error in this case. Signed-off-by: Julien Meunier Signed-off-by: David Marchand --- drivers/net/e1000/igb_ethdev.c | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/d

[dpdk-dev] [PATCH] enic: fix vlan filtering

2015-10-30 Thread David Marchand
From: Julien Meunier Report an error when something went wrong. Signed-off-by: Julien Meunier Signed-off-by: David Marchand --- drivers/net/enic/enic_ethdev.c | 7 --- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/net/enic/enic_ethdev.c b/drivers/net/enic/enic_ethd

[dpdk-dev] [PATCH v3 6/6] test: add checks for cpu flags on armv8

2015-10-30 Thread Jan Viktorin
Hmm, I see. It's good to fix this in the generated e-mails between format-patch and send-email calls. I always review those to be sure they meet my expectations ;). Anyway, it is not clear, what has changed in the v3. Just the rte_cycles? You should explain that at least in the patch. Bett

[dpdk-dev] [PATCH v2 1/1] vhost_xen: fix compile error in main.c

2015-10-30 Thread Iremonger, Bernard
Hi Thomas, > -Original Message- > From: Thomas Monjalon [mailto:thomas.monjalon at 6wind.com] > Sent: Friday, October 30, 2015 5:01 PM > To: Iremonger, Bernard > Cc: dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH v2 1/1] vhost_xen: fix compile error in > main.c > > 2015-10-22 14:21, Be

[dpdk-dev] [PATCH 0/4 v4] i40e: add vector PMD support for FVL

2015-10-30 Thread Thomas Monjalon
2015-10-30 16:41, Thomas Monjalon: > 2015-10-30 14:24, Liang, Cunming: > > > add vector PMD RX for FVL > > > add vector PMD TX for FVL > > > add vector PMD scatter RX for FVL > > > add RX and TX selection function for FVL > > > > Acked-by: Cunming Liang > > Cunming, before accepting some

[dpdk-dev] [PATCH 4/4 v4] add RX and TX selection function for FVL

2015-10-30 Thread Thomas Monjalon
2015-10-30 22:16, Zhe Tao: > --- a/doc/guides/rel_notes/release_2_2.rst > +++ b/doc/guides/rel_notes/release_2_2.rst > @@ -39,6 +39,10 @@ Drivers >Fixed i40e issue that occurred when a DPDK application didn't initialize >ports if memory wasn't available on socket 0. > > +* **i40e: Add vec

[dpdk-dev] [PATCH 0/4 v4] i40e: add vector PMD support for FVL

2015-10-30 Thread Thomas Monjalon
2015-10-30 14:24, Liang, Cunming: > > add vector PMD RX for FVL > > add vector PMD TX for FVL > > add vector PMD scatter RX for FVL > > add RX and TX selection function for FVL > > Acked-by: Cunming Liang Cunming, before accepting some patches, you should run checkpatch and check the wor

  1   2   3   4   >