[dpdk-dev] [PATCH] timer bug fix.

2014-05-21 Thread Vadim Suraev
Bug: When a timer is running - if rte_timer_stop is called, the pending decrement is skipped (decremented only if the timer is pending) and due to the update flag the future processing is skipped so the timer is counted as pending while it is stopped. - the same applies when rte_timer_reset is

[dpdk-dev] [PATCH 22/22] ethdev: support setting maximum packet length to less than 1518

2014-05-21 Thread Helin Zhang
In ethdev, it will ignore setting maximum packet length to less than 1518. The changes is to fix it and let less than 1518 can be really set for maximum packet length. Signed-off-by: Helin Zhang Signed-off-by: Mark Chen --- lib/librte_ether/rte_ethdev.c | 10 +++--- 1 file changed, 7 insert

[dpdk-dev] [PATCH 21/22] config: add configurations for enabling 'Extended Tag' or resetting 'Max Read Request Size'

2014-05-21 Thread Helin Zhang
Sys files of 'extended_tag' and 'max_read_request_size' have been supported in igb_uio, and can be changed during probing PCI. Three items in configuration files are needed to support them at compile time. Those three items are, - CONFIG_RTE_PCI_CONFIG - CONFIG_RTE_PCI_EXTENDED_TAG - CONFIG_RTE_

[dpdk-dev] [PATCH 20/22] pci: support reading/writing sys files of 'extended_tag' and 'max_read_request_size'

2014-05-21 Thread Helin Zhang
Sys files of 'extended_tag' and 'max_read_request_size' are supported by igb_uio. Reading or writing them to enable/disable 'Extended Tag' or reset 'Max Read Request Size' automatically according to the configurations are added. Signed-off-by: Helin Zhang Signed-off-by: Mark Chen --- lib/librte

[dpdk-dev] [PATCH 19/22] igb_uio: add sys files to read/write specific bits in pci config space

2014-05-21 Thread Helin Zhang
Enabling 'Extended Tag' and resetting 'Max Read Request Size' in PCI config space have big impacts to i40e performance. They cannot be changed on some BIOS implementations, though can on others. Two sys files of 'extended_tag' and 'max_read_request_size' are added to support changing them by 'echo

[dpdk-dev] [PATCH 18/22] app/test-pmd: support setting port based VLAN ID offloading

2014-05-21 Thread Helin Zhang
As i40e support port based VLAN ID insertion offloading, new command 'tx_vlan set pvid port_id vlan_id (on|off)' is added to support that setting. Signed-off-by: Helin Zhang Signed-off-by: Mark Chen --- app/test-pmd/cmdline.c | 61 ++ app/test-pmd

[dpdk-dev] [PATCH 17/22] app/test-pmd: support displaying i40e 32 bytes RX descriptor

2014-05-21 Thread Helin Zhang
As i40e support both 16 and 32 bytes RX descriptors, modifications should be done to support 32 bytes RX descriptors according to the configuration. Signed-off-by: Helin Zhang Signed-off-by: Mark Chen --- app/test-pmd/config.c | 36 +--- 1 file changed, 33 insert

[dpdk-dev] [PATCH 16/22] app/test-pmd: tell the driver the correct packet type to support i40e TX checksum offload

2014-05-21 Thread Helin Zhang
As i40e PMD need to know the L3 packet type for TX checksum offloading, modifications in testpmd should be done for that. Signed-off-by: Helin Zhang Signed-off-by: Mark Chen --- app/test-pmd/csumonly.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/test-pmd/csumonly.c b/app/test-pmd/

[dpdk-dev] [PATCH 15/22] examples/load_balancer: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in load_balancer example application to support all PMDs. Signed-off-by: Helin Zhang

[dpdk-dev] [PATCH 14/22] examples/dpdk_qat: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in dpdk_qat example application to support all PMDs. Signed-off-by: Helin Zhang Sig

[dpdk-dev] [PATCH 13/22] examples/ip_reassembly: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in ip_reassembly example application to support all PMDs. Signed-off-by: Helin Zhang

[dpdk-dev] [PATCH 12/22] examples/l3fwd-power: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in l3fwd-power example application to support all PMDs. Signed-off-by: Helin Zhang

[dpdk-dev] [PATCH 11/22] examples/l3fwd-vf: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in l3fwd-vf example application to support all PMDs. Signed-off-by: Helin Zhang Sig

[dpdk-dev] [PATCH 10/22] examples/l3fwd: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in l3fwd example application to support all PMDs. Signed-off-by: Helin Zhang Signed

[dpdk-dev] [PATCH 09/22] examples/multi_process: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in multi_process example application to support all PMDs. Signed-off-by: Helin Zhang

[dpdk-dev] [PATCH 08/22] examples/qos_meter: use ETH_RSS_IP to replace IP hash flags of RSS

2014-05-21 Thread Helin Zhang
As hash flags of RSS have been enlarged from 16 bits to 64 bits to support more possible types in all PMDs, and new macro of ETH_RSS_IP has been defined to cover all IP hash flags of RSS. That macro should be used in qos_meter example application to support all PMDs. Signed-off-by: Helin Zhang Si

[dpdk-dev] [PATCH 07/22] app/testpmd: enlarge the hash flags of RSS to 64 bits

2014-05-21 Thread Helin Zhang
As the hash flags of RSS has been enlarged from 16 bits to 64 bits in 'struct rte_eth_rss_conf' in rte_ethdev.h, the size of it in testpmd should be enlarged as well. In addition, macro of ETH_RSS_IP is used to replace all IP hash flags of RSS. Signed-off-by: Helin Zhang Signed-off-by: Mark Chen

[dpdk-dev] [PATCH 06/22] vmxnet3: enlarge the hash flags of RSS to 64 bits

2014-05-21 Thread Helin Zhang
As the hash flags of RSS has been enlarged from 16 bits to 64 bits in 'struct rte_eth_rss_conf' in rte_ethdev.h, the size of it in vmxnet3 should be enlarged as well. In addition, the flags for vmxnet3 only should be masked, as there are flags for others in that 64 bits. Signed-off-by: Helin Zhang

[dpdk-dev] [PATCH 05/22] ixgbe: enlarge the hash flags of RSS to 64 bits

2014-05-21 Thread Helin Zhang
As the hash flags of RSS has been enlarged from 16 bits to 64 bits in 'struct rte_eth_rss_conf' in rte_ethdev.h, the size of it in ixgbe should be enlarged as well. In addition, the flags for ixgbe only should be masked, as there are flags for others in that 64 bits. Signed-off-by: Helin Zhang Si

[dpdk-dev] [PATCH 04/22] e1000: enlarge the hash flags of RSS to 64 bits

2014-05-21 Thread Helin Zhang
As the hash flags of RSS has been enlarged from 16 bits to 64 bits in 'struct rte_eth_rss_conf' in rte_ethdev.h, the size of it in e1000 should be enlarged as well. In addition, the flags for e1000 only should be masked, as there are flags for others in that 64 bits. Signed-off-by: Helin Zhang Si

[dpdk-dev] [PATCH 03/22] i40e: add i40e support

2014-05-21 Thread Helin Zhang
Add i40e support by modifying neccessary source files. The componets modified are, - Add configurations for i40e in config/ - Modified neccessary makefiles in both k/ and lib/ - Modified neccessary source files in librte_ether/ - Add more packet bit flags in rte_mbuf.h - Add i40e support in ig

[dpdk-dev] [PATCH 02/22] i40e: add PMD source files

2014-05-21 Thread Helin Zhang
Add PMD source files to support Intel(R) 40G Ethernet Controllers. The new files are, i40e_osdep.h i40e_ethdev.c i40e_ethdev.h i40e_ethdev_vf.c i40e_logs.h i40e_pf.c i40e_pf.h i40e_rxtx.c i40e_rxtx.h Makefile Signed-off-by: Helin Zhang Signed-off-by: Mark Chen --- lib/librte_pmd_i40e/Makefile

[dpdk-dev] [PATCH 01/22] i40e: add basic shared code

2014-05-21 Thread Helin Zhang
Add shared code source files to support basic operations to be called in poll mode driver. The new files are, i40e_adminq.c i40e_adminq.h i40e_adminq_cmd.h i40e_alloc.h i40e_common.c i40e_dcb.c i40e_dcb.h i40e_diag.c i40e_diag.h i40e_hmc.c i40e_hmc.h i40e_lan_hmc.c i40e_lan_hmc.h i40e_nvm.c i40e_pr

[dpdk-dev] [PATCH 00/22][PMD][I40E] *** Add i40e PMD support ***

2014-05-21 Thread Helin Zhang
Summary: The series of patches are to add i40e PMD support. * Add new PMD driver of i40e in the folder of librte_pmd_i40e * Add some neccessary definitions, changes in rte_mbuf.h and eth_dev * Add new configurations for i40e * Add or modifiy makefiles to support i40e compilation * Add neccessary ch

[dpdk-dev] [PATCH] timer bug fix

2014-05-21 Thread Vadim Suraev
Bug: when a periodic timer's callback is running, if another timer is manipulated, the periodic timer is not reloaded. Solution: set the update flag only is the modified timer is in RUNNING state Signed-off-by: Vadim Suraev --- lib/librte_timer/rte_timer.c |8 ++-- 1 file changed, 6 i

[dpdk-dev] Qos scheduler question.

2014-05-21 Thread Ariel Rodriguez
Hi , we re implementing bandwith controller per user with the dpdk qos scheduler framework. I want to know if the framework support dynamic changes in the rte_sched_port structure. For example, we want to give the possibility to change the configuration of the different bucket rates int the port

[dpdk-dev] [PATCH v2 07/16] Add support for VFIO interrupts, add VFIO header

2014-05-21 Thread Thomas Monjalon
2014-05-19 16:51, Anatoly Burakov: > Creating code to handle VFIO interrupts in EAL interrupts, and also > adding a header eal_vfio.h. Maybe it's better to have 2 patches here. > This header checks two things: > * checks if CONFIG_RTE_EAL_VFIO was enabled during build time > * checks that kernel

[dpdk-dev] [PATCH 5/6] ether: allow setting mac address

2014-05-21 Thread Ivan Boule
Hi Stephen, Looking more precisely to your patch, I think that your requirement can beaddressed without adding a new `mac_addr_set` function into the [already overloaded] set of operations exported by a PMD. In fact, changing the default MAC address used by a port consists in executingthe foll

[dpdk-dev] [PATCH 2/3] config: rename "default" configuration file as "native"

2014-05-21 Thread Thomas Monjalon
> > The "default" part in configuration filenames is misleading. > > Rename this as "native", as this is the RTE_MACHINE that is set in these > > files. This should make it clearer for people who build DPDK on a system > > then run it on another one. > > > > Signed-off-by: David Marchand > > Ack

[dpdk-dev] [PATCH 1/3] config: factorize configurations

2014-05-21 Thread Thomas Monjalon
2014-05-14 15:10, Richardson, Bruce: > > -Original Message- > > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of David Marchand > > Sent: Wednesday, May 14, 2014 3:58 PM > > To: dev at dpdk.org > > Subject: [dpdk-dev] [PATCH 1/3] config: factorize configurations > > > > linux and bs

[dpdk-dev] [PATCH 2/2] timer bug fix

2014-05-21 Thread Olivier MATZ
Hi Vadim, On 05/16/2014 12:15 PM, Vadim Suraev wrote: > Description: while running a periodic timer's callback, if another > timer is manipulated, the updated flag is raised > preventing the periodic timer to reload. > Fix: move > updated flag from priv_timer to rte_timer stucture (one > p

[dpdk-dev] [PATCH v2 05/16] Moved interrupt type out of igb_uio

2014-05-21 Thread Thomas Monjalon
Few more comments from checkpatch.pl on this patch: ERROR: else should follow close brace '}' #252: FILE: lib/librte_eal/linuxapp/igb_uio/igb_uio.c:225: } + else if (udev->mode == RTE_INTR_MODE_LEGACY) { WARNING: suspect code indent for conditional statements (8, 8) #316: FILE: lib/

[dpdk-dev] [PATCH v2 05/16] Moved interrupt type out of igb_uio

2014-05-21 Thread Thomas Monjalon
2014-05-19 16:51, Anatoly Burakov: > Moving interrupt type enum out of igb_uio and renaming it to be more > generic. Such a strange header naming and separation is done mostly to > make coming virtio patches easier to port to dpdk.org tree. > > Signed-off-by: Anatoly Burakov > +++ b/lib/librte_

[dpdk-dev] [PATCH v2 03/16] Rename RTE_PCI_DRV_NEED_IGB_UIO to RTE_PCI_DRV_NEED_MAPPING

2014-05-21 Thread Thomas Monjalon
2014-05-19 16:51, Anatoly Burakov: > Rename the RTE_PCI_DRV_NEED_IGB_UIO to be more generic, > retain old macro for backwards compatibility. Probably should > be removed in one of the next releases. > > Signed-off-by: Anatoly Burakov [...] > +/** Retain the old name for backwards-compatibility *

[dpdk-dev] [PATCH v2 01/16] Separate igb_uio mapping into a separate file

2014-05-21 Thread Thomas Monjalon
Hi Anatoly, 2014-05-19 16:51, Anatoly Burakov: > In order to make the code a bit more clean while using multiple > drivers, IGB_UIO mapping has been separated into its own file. > > Signed-off-by: Anatoly Burakov [...] > /* map a particular resource from a file */ > -static void * > -pci_map_r

[dpdk-dev] [PATCH v2 05/16] Moved interrupt type out of igb_uio

2014-05-21 Thread Burakov, Anatoly
Hi Thomas, > Why are you splitting things in 2 files? > The commit message explains it. Initially this work was based off our internal tree, which had a few virtio-related changes, including these two files. I stripped out most of the virtio stuff and left only things relevant to VFIO, but ke

[dpdk-dev] [PATCH 2/4] distributor: new packet distributor library

2014-05-21 Thread Neil Horman
On Wed, May 21, 2014 at 10:21:26AM +, Richardson, Bruce wrote: > > -Original Message- > > From: Neil Horman [mailto:nhorman at tuxdriver.com] > > Sent: Tuesday, May 20, 2014 7:19 PM > > To: Richardson, Bruce > > Cc: dev at dpdk.org > > Subject: Re: [dpdk-dev] [PATCH 2/4] distributor: ne

[dpdk-dev] [PATCH 2/4] distributor: new packet distributor library

2014-05-21 Thread Richardson, Bruce
> -Original Message- > From: Neil Horman [mailto:nhorman at tuxdriver.com] > Sent: Tuesday, May 20, 2014 7:19 PM > To: Richardson, Bruce > Cc: dev at dpdk.org > Subject: Re: [dpdk-dev] [PATCH 2/4] distributor: new packet distributor > library > > On Tue, May 20, 2014 at 11:00:55AM +0100,

[dpdk-dev] [PATCH v2 10/16] Added support for selecting VFIO interrupt type from EAL command-line

2014-05-21 Thread Stephen Hemminger
Originally igb_uio had code for MSI, but it was broken. See my patches which fixed that and several other bugs. On Tue, May 20, 2014 at 8:26 PM, Burakov, Anatoly wrote: > Hi Stephen, > > > I am not sure that MSI-X has any advantage with only one IRQ, so MSI > would > > do. > > Igb_uio doesn't s