dpdk.git
9 years agoixgbe/base: fix X550 check
Ouyang Changchun [Thu, 12 Feb 2015 12:01:05 +0000 (20:01 +0800)]
ixgbe/base: fix X550 check

Update the macro to read/write iosf sb stat.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: fix X550 CS4227 address
Ouyang Changchun [Thu, 12 Feb 2015 12:00:38 +0000 (20:00 +0800)]
ixgbe/base: fix X550 CS4227 address

Update the address of IXGBE_CS4227.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: fix X550 init early return
Ouyang Changchun [Thu, 12 Feb 2015 12:00:37 +0000 (20:00 +0800)]
ixgbe/base: fix X550 init early return

It could early return according to read status.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: fix X550 link speed
Ouyang Changchun [Thu, 12 Feb 2015 12:00:36 +0000 (20:00 +0800)]
ixgbe/base: fix X550 link speed

Remove unnecessary '|' for the link speed.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: rework link speed branches
Ouyang Changchun [Thu, 12 Feb 2015 12:00:57 +0000 (20:00 +0800)]
ixgbe/base: rework link speed branches

Use switch-case statement to replace if-else statement.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: support 5G link speed
Ouyang Changchun [Thu, 12 Feb 2015 12:00:56 +0000 (20:00 +0800)]
ixgbe/base: support 5G link speed

Support 5G link speed for X550.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: fix mac type checks
Ouyang Changchun [Thu, 12 Feb 2015 12:00:51 +0000 (20:00 +0800)]
ixgbe/base: fix mac type checks

It needs '>=' rather than '=='.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: fix Tx pending clearing
Ouyang Changchun [Thu, 12 Feb 2015 12:00:45 +0000 (20:00 +0800)]
ixgbe/base: fix Tx pending clearing

Wait for a last completion before clearing buffers,
and before proceeding, it needs make sure that the PCIe block does not have
transactions pending.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: fix bus type overwrite
Ouyang Changchun [Thu, 12 Feb 2015 12:00:35 +0000 (20:00 +0800)]
ixgbe/base: fix bus type overwrite

It needs check if the bus type is the unknown type or not.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: fix SFP probing
Ouyang Changchun [Thu, 12 Feb 2015 12:00:59 +0000 (20:00 +0800)]
ixgbe/base: fix SFP probing

LAN ID is needed for i2c access, so move it before reading I2C eeprom.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: set SFP probing retries
Ouyang Changchun [Thu, 12 Feb 2015 12:00:58 +0000 (20:00 +0800)]
ixgbe/base: set SFP probing retries

Check if SFP is detected or not.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: i2c bit-bang mode
Ouyang Changchun [Thu, 12 Feb 2015 12:01:03 +0000 (20:01 +0800)]
ixgbe/base: i2c bit-bang mode

Support the bit-bang mode on X550;
And negate I2C output enable;

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: i2c combined functions
Ouyang Changchun [Thu, 12 Feb 2015 12:00:54 +0000 (20:00 +0800)]
ixgbe/base: i2c combined functions

New API to perform I2C read combined operation.
New API to perform I2C write combined operation.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: use another log macro
Ouyang Changchun [Thu, 12 Feb 2015 12:00:34 +0000 (20:00 +0800)]
ixgbe/base: use another log macro

Use DEBUGOUT to replace ERROR_REPORT1.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agoixgbe/base: minor changes
Ouyang Changchun [Thu, 12 Feb 2015 12:00:33 +0000 (20:00 +0800)]
ixgbe/base: minor changes

Remove '&' before function name;
Adjust the spaces etc.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Jijiang Liu <jijiang.liu@intel.com>
9 years agonet: remove unneeded include
Bruce Richardson [Thu, 23 Apr 2015 12:49:19 +0000 (13:49 +0100)]
net: remove unneeded include

There are no memcpy functions in rte_ip.h so there is no need to include
rte_memcpy.h in that file.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agopci: allow const pci address parameter
Stephen Hemminger [Thu, 16 Apr 2015 23:23:40 +0000 (16:23 -0700)]
pci: allow const pci address parameter

probe and close both don't modify the rte_pci_addr structure
that is passed.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agopci: make device id tables const
Stephen Hemminger [Thu, 16 Apr 2015 23:23:39 +0000 (16:23 -0700)]
pci: make device id tables const

The PCI device id table is immutable and should be made const
in all drivers. The pseudo drivers can initialize their local
copy as necessary.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agoethdev: remove unnecessary paren on return
Stephen Hemminger [Thu, 9 Apr 2015 21:29:42 +0000 (14:29 -0700)]
ethdev: remove unnecessary paren on return

The Linux style is not to put extra useless paren's around
the expression passed to return statement.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
9 years agoethdev: make tables const
Stephen Hemminger [Thu, 9 Apr 2015 21:29:41 +0000 (14:29 -0700)]
ethdev: make tables const

The statistics tables and null mac address should be immutable.
Fix up get_addr routines to accept const args.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agoethdev: remove extra inline
Stephen Hemminger [Thu, 9 Apr 2015 21:29:39 +0000 (14:29 -0700)]
ethdev: remove extra inline

There is no reason to inline functions that are not in the critical
path.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agoenic: migrate flow director filtering to new API
Sujith Sankar [Thu, 9 Apr 2015 09:29:32 +0000 (14:59 +0530)]
enic: migrate flow director filtering to new API

This patch helps enic migrate to the new flow-director API.

It takes care of the following.
1.  The change in fdir_filter structure and stats structure
2.  DPDK interface functions in enic_ethdev.c
3.  ENIC driver functions that deal with the VIC adapter

Signed-off-by: Sujith Sankar <ssujith@cisco.com>
9 years agoenic: fix port id in received mbufs
Adrien Mazarguil [Tue, 14 Apr 2015 14:23:55 +0000 (16:23 +0200)]
enic: fix port id in received mbufs

This field is not supposed to contain the RX queue index. Applications can
rely on it to determine the port a given mbuf comes from.

Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Sujith Sankar <ssujith@cisco.com>
9 years agouse simple zero initializers
Thomas Monjalon [Wed, 15 Apr 2015 17:09:28 +0000 (19:09 +0200)]
use simple zero initializers

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 <insertlater>) for old versions of GCC,
so the workarounds may be removed.

These initializers should not be needed for static variables but they
are still used to workaround an ICC bug (see commit b2595c4aa92d).

There is one remaining exception where {0} initializer doesn't work cleanly,
even with recent GCC:
lib/librte_pmd_ixgbe/ixgbe_rxtx_vec.c:735:9:
error: missing braces around initializer [-Werror=missing-braces]
  struct rte_mbuf mb_def = {0}; /* zeroed mbuf */

Tested with gcc-4.4.7 (CentOS), gcc-4.7.2 (Debian), gcc-4.9.2 (Arch),
clang-3.6.0 and icc-13.1.1.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Tested-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Tested-by: John McNamara <john.mcnamara@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Vlad Zolotarov <vladz@cloudius-systems.com>
9 years agomk: fix build with gcc 4.4 and clang
Thomas Monjalon [Tue, 14 Apr 2015 09:23:36 +0000 (11:23 +0200)]
mk: fix build with gcc 4.4 and clang

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')

lib/librte_pmd_ixgbe/ixgbe_rxtx.c: In function 'ixgbe_set_rsc':
lib/librte_pmd_ixgbe/ixgbe_rxtx.c:4072: error: missing initializer
lib/librte_pmd_ixgbe/ixgbe_rxtx.c:4072: error: (near initialization for 'dev_info.driver_name')

lib/librte_pmd_ixgbe/ixgbe_rxtx.c: In function 'ixgbe_recv_pkts_lro_single_alloc':
lib/librte_pmd_ixgbe/ixgbe_rxtx.c:1479: error: 'next_rsc_entry' may be used uninitialized in this function
lib/librte_pmd_ixgbe/ixgbe_rxtx.c:1480: error: 'next_rxe' may be used uninitialized in this function

The "missing initializer" warning is a GCC bug which seems fixed in 4.7.
The same warning is thrown by clang.
The "may be used uninitialized" warning is another GCC bug which seems fixed in 4.7.

Fixes: 8eecb3295aed ("ixgbe: add LRO support")

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Vlad Zolotarov <vladz@cloudius-systems.com>
9 years agodoc: fix vhost guide
Igor Ryzhov [Wed, 8 Apr 2015 16:31:07 +0000 (19:31 +0300)]
doc: fix vhost guide

Guide says that a configure parameter to choose between vhost cuse
and vhost user will be introduced in the future, but it’s already
added by commit 28a1ccca41bf.

Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
Acked-by: Changchun Ouyang <changchun.ouyang@intel.com>
9 years agodoc: convert prog guide glossary to definition list
John McNamara [Fri, 10 Apr 2015 15:39:26 +0000 (16:39 +0100)]
doc: convert prog guide glossary to definition list

Converted the Glossary table in the Programmer's Guide
to a definition list to improve rendering.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
9 years agodoc: fix verbatim sections for vmxnet3
John McNamara [Fri, 10 Apr 2015 14:45:39 +0000 (15:45 +0100)]
doc: fix verbatim sections for vmxnet3

Fixed two verbatim text sections in vmxnet3 docs.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Yong Wang <yongwang@vmware.com>
9 years agoixgbe: add LRO support
Vlad Zolotarov [Mon, 30 Mar 2015 19:21:11 +0000 (22:21 +0300)]
ixgbe: add LRO support

    - Only x540 and 82599 devices support LRO.
    - Add the appropriate HW configuration.
    - Add RSC aware rx_pkt_burst() handlers:
       - Implemented bulk allocation and non-bulk allocation versions.
       - Add LRO-specific fields to rte_eth_rxmode, to rte_eth_dev_data
         and to ixgbe_rx_queue.
       - Use the appropriate handler when LRO is requested.

Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
9 years agoixgbe: code refactoring
Vlad Zolotarov [Mon, 30 Mar 2015 19:21:10 +0000 (22:21 +0300)]
ixgbe: code refactoring

   - ixgbe_rx_alloc_bufs():
      - Reset the rte_mbuf fields only when requested.
      - Take the RDT update out of the function.
      - Add the stub when RTE_LIBRTE_IXGBE_RX_ALLOW_BULK_ALLOC is not defined.
   - ixgbe_recv_scattered_pkts():
      - Take the code that updates the fields of the cluster's HEAD buffer into
        the inline function.

Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
9 years agoixgbe: cleanups
Vlad Zolotarov [Mon, 30 Mar 2015 19:21:09 +0000 (22:21 +0300)]
ixgbe: cleanups

   - Removed the not needed casting.
   - ixgbe_dev_rx_init(): shorten the lines by defining a local alias variable to access
                          &dev->data->dev_conf.rxmode.

Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
9 years agoethdev: make dev_ops const
Stephen Hemminger [Tue, 7 Apr 2015 21:21:03 +0000 (14:21 -0700)]
ethdev: make dev_ops const

The ethernet device ops function table should be made const for
safety and security.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agoapp/test: put dev_ops in private
Stephen Hemminger [Tue, 7 Apr 2015 21:21:02 +0000 (14:21 -0700)]
app/test: put dev_ops in private

The test PMD uses a special type of eth_dev_ops to test features.
Rather allocating this separately, just put in the private data area.
This allows for next change to make dev_ops const.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agopmd: remove useless null checks before rte_free
Stephen Hemminger [Tue, 7 Apr 2015 21:21:01 +0000 (14:21 -0700)]
pmd: remove useless null checks before rte_free

Since rte_free accept NULL and does nothing, better to save
space and remove these useless checks.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agoexamples: remove useless null checks before rte_free
Stephen Hemminger [Tue, 7 Apr 2015 21:21:00 +0000 (14:21 -0700)]
examples: remove useless null checks before rte_free

rte_free handles getting passed a NULL pointer.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agoapp/test: remove useless null check before rte_free
Stephen Hemminger [Tue, 7 Apr 2015 21:20:59 +0000 (14:20 -0700)]
app/test: remove useless null check before rte_free

rte_free like Glibc free allows rte_free(NULL) as null operation.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agoapp/test: remove useless memset
Stephen Hemminger [Tue, 7 Apr 2015 21:20:58 +0000 (14:20 -0700)]
app/test: remove useless memset

Remove useless memset, since dev_private is created by rte_zmalloc
it must already be zero.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agoscripts: test null forwarding
Thomas Monjalon [Thu, 9 Apr 2015 17:03:14 +0000 (19:03 +0200)]
scripts: test null forwarding

This script ease testing of basic initializations and Rx/Tx bursts.
It may help to check obvious regressions.
In order to run it on a standard development machine, it doesn't use
neither hugepages nor real interfaces.

The optional parameters are:
- build directory (default: build)
- coremask (default: 3 i.e. cores 0 and 1)

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agomk: fix static linking with null pmd
Thomas Monjalon [Thu, 9 Apr 2015 17:34:17 +0000 (19:34 +0200)]
mk: fix static linking with null pmd

Null PMD was not found when using a statically linked application:
EAL: no driver found for eth_null1
EAL: failed to initialize eth_null1 device

Fixes: c743e50c475f ("null: new poll mode driver")

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agomk: remove uio suffix from virtio pmd
Thomas Monjalon [Thu, 9 Apr 2015 17:23:45 +0000 (19:23 +0200)]
mk: remove uio suffix from virtio pmd

The virtio pmd is not restricted to uio anymore.

Fixes: da978dfdc43b ("virtio: use port IO to get PCI resource")

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Changchun Ouyang <changchun.ouyang@intel.com>
9 years agoenic: disable debug traces
Thomas Monjalon [Tue, 7 Apr 2015 17:17:06 +0000 (19:17 +0200)]
enic: disable debug traces

The function name is printed in each enic_ethdev function.
Disable it by default with a new build option.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Sujith Sankar <ssujith@cisco.com>
Reviewed-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
9 years agodoc: fix code-block syntax
Thomas Monjalon [Fri, 3 Apr 2015 15:48:30 +0000 (17:48 +0200)]
doc: fix code-block syntax

Some blocks are not visible with some Sphinx versions because
they are using the wrong keyword for code.

Tested with Sphinx v1.1.3.

Fixes: 1733be6d3147 ("doc: new eal multi-pthread feature")
Fixes: ccefe752cab0 ("doc: add jobstats sample guide")

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agoversion: 2.1.0-rc0
Thomas Monjalon [Fri, 3 Apr 2015 16:19:56 +0000 (18:19 +0200)]
version: 2.1.0-rc0

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agoversion: 2.0.0
Thomas Monjalon [Tue, 31 Mar 2015 01:30:25 +0000 (03:30 +0200)]
version: 2.0.0

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agopkg: update RPM
Thomas Monjalon [Thu, 2 Apr 2015 10:49:34 +0000 (12:49 +0200)]
pkg: update RPM

Enable vhost-user and build PDF doc.
Inkscape and TeXLive are required to convert .svg and .rst to .pdf.
Temporary sphinx files .* (.doctrees/ and .buildinfo) are cleaned.

Tested on Fedora 20.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agopkg: remove -core file suffix
Thomas Monjalon [Thu, 2 Apr 2015 15:59:45 +0000 (17:59 +0200)]
pkg: remove -core file suffix

Since -core suffix was removed from the package names in commit
6f2760ecdf4e, the file name should also be updated.

The alignment of build commands is also changed to prepare next patch.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agomk: reduce PDF build commands
Thomas Monjalon [Thu, 2 Apr 2015 16:14:23 +0000 (18:14 +0200)]
mk: reduce PDF build commands

In case of documents without image, an empty rm command can be seen if V=1.
Remove it to avoid disturbing debugging.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agomk: remove fuse requirement for vhost-user
Thomas Monjalon [Thu, 2 Apr 2015 17:20:33 +0000 (19:20 +0200)]
mk: remove fuse requirement for vhost-user

The fuse library is needed for vhost-cuse as required in commit 28a1ccca41bf.
The case vhost-user was forgotten for application linking.

Fixes: 28a1ccca41bf ("vhost: add build option for vhost-user")

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agodoc: update new features
Siobhan Butler [Fri, 3 Apr 2015 09:51:42 +0000 (10:51 +0100)]
doc: update new features

- Remove duplicate entry
- Added remaining features to list of new features

Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: add known issue with bonding test
Siobhan Butler [Thu, 2 Apr 2015 21:31:07 +0000 (22:31 +0100)]
doc: add known issue with bonding test

Added issue with failing unit test for link bonding to known issues.

Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: remove release version from known issues
Siobhan Butler [Thu, 2 Apr 2015 20:58:15 +0000 (21:58 +0100)]
doc: remove release version from known issues

Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agombuf: clean old refcnt option
Thomas Monjalon [Tue, 31 Mar 2015 12:45:06 +0000 (14:45 +0200)]
mbuf: clean old refcnt option

CONFIG_RTE_MBUF_SCATTER_GATHER was renamed into CONFIG_RTE_MBUF_REFCNT
by commit 62814bc2e923 and removed by commit 4769bc5a27cc.
Some traces remain because of delayed patches.

It can also be removed from doxygen config.
It is now poisoned in rte_mbuf.h to warn any misuse.

Fixes: d0dff9ba445e ("doc: sample application user guide")
Fixes: fc1f2750a3ec ("doc: programmers guide")
Fixes: 4769bc5a27cc ("mbuf: remove build option to disable refcnt")

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Changchun Ouyang <changchun.ouyang@intel.com>
9 years agodoc: update mlx4 usage and dependencies
Adrien Mazarguil [Thu, 2 Apr 2015 09:33:43 +0000 (11:33 +0200)]
doc: update mlx4 usage and dependencies

- libmlx4 and libibverbs dependencies distributed with Mellanox OFED are now
  also available on DPDK.org to make installation easier.
- Document Mellanox OFED and firmware versions to use.
- Add links to Mellanox and its community websites.
- Add kernel modules parameters section.

Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
9 years agodoc: comment i40e firmware version
Helin Zhang [Fri, 3 Apr 2015 08:06:55 +0000 (16:06 +0800)]
doc: comment i40e firmware version

Added notes for i40e firmware version. As base driver to support the
latest version of firmware (FVL3E) hasn't been integrated, currently
the validated version of firmware is 4.2.6.

Signed-off-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agoi40e: fix link status timeout
Cunming Liang [Wed, 1 Apr 2015 02:33:34 +0000 (10:33 +0800)]
i40e: fix link status timeout

API *rte_eth_link_get* expect to call a wait to complete link_update.
That's the difference between *rte_eth_link_get_nowait*.
The patch fixes the issue that i40e link_update ignores the wait_to_complete flag.
The issue impacts those applications calling rte_eth_link_get to get wrong intermediate link status.

Signed-off-by: Cunming Liang <cunming.liang@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
9 years agoi40e: fix out of bound read
Jingjing Wu [Thu, 12 Feb 2015 11:22:23 +0000 (19:22 +0800)]
i40e: fix out of bound read

Klocwork reports array 'src_offset' may use index 16.
In function i40e_srcoff_to_flx_pit, index j + 1 can reach I40E_FDIR_MAX_FLEX_LEN.
This patch fixes this issue to avoid array bound.

Test report: http://www.dpdk.org/ml/archives/dev/2015-March/016030.html

Fixes: d8b90c4eabe9 ("i40e: take flow director flexible payload configuration")

Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Tested-by: Min Cao <min.cao@intel.com>
9 years agodoc: add note for --txqflags in testpmd
Pablo de Lara [Wed, 1 Apr 2015 12:10:11 +0000 (13:10 +0100)]
doc: add note for --txqflags in testpmd

Since txqflags is now set from the default rx/tx configuration,
depending on the PMD, it might not be 0.
Therefore, user has to overwrite it with --txqflags 0.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agomk: fix pdf doc rules order
John McNamara [Wed, 1 Apr 2015 11:32:45 +0000 (12:32 +0100)]
mk: fix pdf doc rules order

Re-ordered the guide-pdf-% and guide-% rules to allow
the doc-guides-pdf target to build with make 3.81. It
builds unmodified with all later versions of make.

Fixes: ebf8050afd44 ("doc: add pdf output")

Reported-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agopci: rename passthrough driver to kernel driver
Thomas Monjalon [Tue, 31 Mar 2015 22:00:37 +0000 (00:00 +0200)]
pci: rename passthrough driver to kernel driver

Kernel driver (kdrv) seems easier to understand than
passthrough driver (pt_driver). It's also more generic
as a PMD could run on top of any PCI kernel driver if
it would offer such support.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Michael Qiu <michael.qiu@intel.com>
Acked-by: David Marchand <david.marchand@6wind.com>
9 years agoversion: 2.0.0-rc3
Thomas Monjalon [Tue, 31 Mar 2015 01:33:48 +0000 (03:33 +0200)]
version: 2.0.0-rc3

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agodoc: update tested OS list in release notes
Siobhan Butler [Sun, 22 Mar 2015 12:33:27 +0000 (12:33 +0000)]
doc: update tested OS list in release notes

Updated Operating Systems tested during 2.0 in release notes

Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: update release notes for new sample apps
Siobhan Butler [Thu, 12 Mar 2015 12:13:54 +0000 (12:13 +0000)]
doc: update release notes for new sample apps

 Updated release notes release description notes:
 - added new sample applications to list: Link Bonding,Skeleton, Callbacks, Jobstats
 - updated copyright date to 2015

Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: update faq
Siobhan Butler [Sun, 22 Mar 2015 13:25:07 +0000 (13:25 +0000)]
doc: update faq

Added some of the questions posted to the mailing list to the FAQ section of release notes.

Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: update testpmd user guide
Helin Zhang [Mon, 9 Mar 2015 14:39:23 +0000 (22:39 +0800)]
doc: update testpmd user guide

It updated the user guide of testpmd, for the newly supported commands
of getting/setting hash functions, and the command of showing port
information.

Signed-off-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
9 years agodoc: add common issues in vhost sample guide
Changchun Ouyang [Fri, 27 Mar 2015 13:20:06 +0000 (13:20 +0000)]
doc: add common issues in vhost sample guide

Added some documentation on common issues for the vhost sample app
and how to resolve them.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: add vhost-user to sample guide
Huawei Xie [Wed, 11 Mar 2015 16:21:47 +0000 (00:21 +0800)]
doc: add vhost-user to sample guide

add vhost user documentation
fix some minor issues

Signed-off-by: Huawei Xie <huawei.xie@intel.com>
9 years agodoc: add vhost-user guide
Huawei Xie [Wed, 11 Mar 2015 16:22:21 +0000 (00:22 +0800)]
doc: add vhost-user guide

Add vhost user documentation

Signed-off-by: Huawei Xie <huawei.xie@intel.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: add new vlan option in vhost sample guide
Changchun Ouyang [Tue, 3 Mar 2015 02:23:06 +0000 (10:23 +0800)]
doc: add new vlan option in vhost sample guide

see commit: e3d61d1609cb9b3ea851c7776bfbb60dcfe8844a.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
9 years agodoc: add warning for fm10k early driver
Siobhan Butler [Sun, 22 Mar 2015 11:32:35 +0000 (11:32 +0000)]
doc: add warning for fm10k early driver

This patch adds a note to the release notes new features,
as a warning regarding the early status of the FM10K driver for pre-release access

Signed-off-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: add ixgbe VF RSS guide
Changchun Ouyang [Tue, 3 Mar 2015 08:50:48 +0000 (16:50 +0800)]
doc: add ixgbe VF RSS guide

Update the prog guide for commit: 42d2f78abcb77ecb769be

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
9 years agodoc: add note on needing igb_uio for VF devices
Bruce Richardson [Mon, 23 Mar 2015 16:19:50 +0000 (16:19 +0000)]
doc: add note on needing igb_uio for VF devices

Since the uio_pci_generic module requires that the device to which it is
being bound supports legacy interrupts, there can be problems using it
with VF devices. Add a note to the GSG doc to document this fact, and
provide information on loading igb_uio as a replacement.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: add description of the offload API
Olivier Matz [Thu, 19 Mar 2015 16:36:38 +0000 (17:36 +0100)]
doc: add description of the offload API

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
9 years agodoc: update testpmd guide about csum forward engine
Olivier Matz [Thu, 19 Mar 2015 16:36:37 +0000 (17:36 +0100)]
doc: update testpmd guide about csum forward engine

Document the functions introduced by commit 64fc36064d.

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
9 years agodoc: fix prefix in file references
Olivier Matz [Thu, 19 Mar 2015 16:35:12 +0000 (17:35 +0100)]
doc: fix prefix in file references

There are some references to DPDK.xyz.mk files that do not exist in the
dpdk tree. This was probably the result of an automatic replacement, so
restore the proper file names which are rte.xyz.mk.

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
9 years agodoc: add jobstats sample guide
Pawel Wodkowski [Wed, 18 Mar 2015 10:20:39 +0000 (11:20 +0100)]
doc: add jobstats sample guide

Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
[Thomas: fix image extensions for PDF]

9 years agodoc: add jobstats library and sample release notes
Pawel Wodkowski [Fri, 20 Mar 2015 09:43:35 +0000 (10:43 +0100)]
doc: add jobstats library and sample release notes

Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
9 years agodoc: update bonding mode 6 release notes
Pawel Wodkowski [Fri, 20 Mar 2015 09:43:34 +0000 (10:43 +0100)]
doc: update bonding mode 6 release notes

Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
9 years agodoc: add missing new EAL options in testpmd guide
Pablo de Lara [Fri, 27 Mar 2015 16:50:13 +0000 (16:50 +0000)]
doc: add missing new EAL options in testpmd guide

Added information on testpmd user guide
for -l, --lcores and --master-lcore options

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: cleanup multi-pthread prog guide
Cunming Liang [Wed, 4 Mar 2015 00:51:16 +0000 (08:51 +0800)]
doc: cleanup multi-pthread prog guide

Fixes: 1733be6d3147 ("doc: new eal multi-pthread feature")

Reported-by: Siobhan Butler <siobhan.a.butler@intel.com>
Signed-off-by: Cunming Liang <cunming.liang@intel.com>
9 years agodoc: nics guide
Thomas Monjalon [Sat, 31 Jan 2015 22:06:06 +0000 (23:06 +0100)]
doc: nics guide

Create nics guide by moving chapters about Intel and Mellanox NICs.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: move Xen guide out of programmers guide
Thomas Monjalon [Fri, 30 Jan 2015 22:47:18 +0000 (23:47 +0100)]
doc: move Xen guide out of programmers guide

Xen is an environment comparable to Linux and FreeBSD which
have their own guide.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agodoc: fix file attributes
Thomas Monjalon [Fri, 30 Jan 2015 16:18:12 +0000 (17:18 +0100)]
doc: fix file attributes

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agomaintainers: claim pcap PMD
Nicolás Pernas Maradei [Wed, 18 Mar 2015 21:25:06 +0000 (21:25 +0000)]
maintainers: claim pcap PMD

Signed-off-by: Nicolás Pernas Maradei <nicolas.pernas.maradei@emutex.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Siobhan Butler <siobhan.a.butler@intel.com>
9 years agoapp/test: fix strict aliasing with gcc 4.4
Pawel Wodkowski [Fri, 27 Mar 2015 10:56:00 +0000 (11:56 +0100)]
app/test: fix strict aliasing with gcc 4.4

Fix strict aliasing rule error seen in gcc 4.4

Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
9 years agoe1000: fix power down of fiber serdes link
Shelton Chia [Sat, 7 Mar 2015 03:57:38 +0000 (11:57 +0800)]
e1000: fix power down of fiber serdes link

When stopping interface, only shutdown method for copper cable was called.

Signed-off-by: Shelton Chia <jiaxt@sinogrid.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agovirtio: fix crash in secondary process
Changchun Ouyang [Fri, 27 Mar 2015 13:23:15 +0000 (21:23 +0800)]
virtio: fix crash in secondary process

It needs Rx function even in the case of secondary process,
and it also needs check if it supports mergeable feature or not.

Signed-off-by: Changchun Ouyang <changchun.ouyang@intel.com>
9 years agoethdev: add packet count parameter to Rx callback
John McNamara [Thu, 12 Mar 2015 16:54:28 +0000 (16:54 +0000)]
ethdev: add packet count parameter to Rx callback

Added a parameter to the RX callback to pass in the number of
available RX packets in addition to the number of dequeued packets.
This provides the RX callback functions with additional information
that can be used to decide how packets from a burst are handled.

The TX callback doesn't require this additional parameter so the RX
and TX callbacks no longer have the same function parameters. As such
the single RX/TX callback has been refactored into two separate callbacks.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
9 years agoenic: fix possible data loss
Maciej Gajdzica [Fri, 20 Feb 2015 16:13:20 +0000 (16:13 +0000)]
enic: fix possible data loss

Field ig_vlan_strip_en in struct enic type is int. It is used only by
function enic_set_nic_cfg which expects uint_8 as argument. Changed type
of the field to prevent possible loss of precision.

Macro GET_CONFIG passes result of sizeof operation to the function
vnic_dev_spec. This function expects parameter of type unsigned int.
Changed that parameter type to size_t in function declaration to prevent
possible data loss.

Define ENIC_ALIGN is used only by function rte_memzone_reserve_aligned,
which expects argument of type unsigned. Defined constant is of type
unsigned long long. Changed type to unsigned long to prevent possible
loss of precision.

In function writeq is written in two 32-bit long registers with writel
function. When trying to write val >> 32, static code analysis tool
reports that 64-bit value is passed to function expecting 32-bit value.
Added cast to clear this warning.

Issues found with static code analysis tool.

Signed-off-by: Maciej Gajdzica <maciejx.t.gajdzica@intel.com>
9 years agovirtio: fix type for queue id
Maciej Gajdzica [Fri, 20 Feb 2015 16:12:39 +0000 (16:12 +0000)]
virtio: fix type for queue id

Changed vtpci_queue_idx type in function virtio_dev_queue_setup from
uint8_t to uint16_t to prevent possible data loss. Also changed type of
head variable in function virtio_send_command from uint32_t to uint16_t.

Variable rcv_cnt declared in function virtio_recv_mergeable_pkts was of
type uint32_t. It was used by virtqueue_dequeue_burst_rx function, which
expects argument of type uint16_t. Changed rcv_cnt variable type to
uint16_t to prevent possible data loss.

Issues found with static code analysis tool.

Signed-off-by: Maciej Gajdzica <maciejx.t.gajdzica@intel.com>
Acked-by: Changchun Ouyang <changchun.ouyang@intel.com>
9 years agobond: fix type for port and queue id
Maciej Gajdzica [Fri, 20 Feb 2015 16:12:22 +0000 (16:12 +0000)]
bond: fix type for port and queue id

In some places port_id is declared as int or uint16_t, which causes data
loss when using functions expecting port_id as uint8_t.

Previous type of rx and tx queue_id field was int, which caused possible
data loss when calling functions expecting uint16_t as an argument.

Issues found with static code analysis tool.

Signed-off-by: Maciej Gajdzica <maciejx.t.gajdzica@intel.com>
9 years agombuf: add explanation for confusing checks when freeing
Bruce Richardson [Thu, 26 Mar 2015 21:14:54 +0000 (21:14 +0000)]
mbuf: add explanation for confusing checks when freeing

The logic used in the condition check before freeing an mbuf is
sometimes confusing, so explain it in a proper comment.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agotable: fix crash during key overload
Miroslaw Walukiewicz [Tue, 3 Mar 2015 14:16:00 +0000 (09:16 -0500)]
table: fix crash during key overload

hash_key8_ext, hash_key16_ext and hash_key32_ext tables allocate cache
entries to support table overload cases. The crash can occur when cache
entry is free after use.
The problem is with computing the index of the free cache entry.

Signed-off-by: Mirek Walukiewicz <miroslaw.walukiewicz@intel.com>
Signed-off-by: Maciej Gajdzica <maciejx.t.gajdzica@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
9 years agovhost: fix file struct leakage
Pavel Boldin [Mon, 23 Mar 2015 12:53:45 +0000 (14:53 +0200)]
vhost: fix file struct leakage

Due to increased `struct file's reference counter subsequent call
to `filp_close' does not free the `struct file'. Prepend `fput' call
to decrease the reference counter.

Signed-off-by: Pavel Boldin <pboldin@mirantis.com>
Acked-by: Huawei Xie <huawei.xie@intel.com>
9 years agovhost: fix index when mbuf allocation fails
Haifeng Lin [Sat, 21 Mar 2015 01:47:00 +0000 (09:47 +0800)]
vhost: fix index when mbuf allocation fails

When failed to malloc buffer from mempool we just update last_used_idx but
not used->idx so after many times vhost thought have handle all packets
but virtio_net thought vhost have not handle all packets and will not
update avail->idx.

Signed-off-by: Haifeng Lin <haifeng.lin@huawei.com>
Acked-by: Changchun Ouyang <changchun.ouyang@intel.com>
Acked-by: Huawei Xie <huawei.xie@intel.com>
9 years agobond: remove memory allocation for PCI driver
Jia Yu [Mon, 23 Mar 2015 21:53:56 +0000 (14:53 -0700)]
bond: remove memory allocation for PCI driver

eth_driver already contains rte_pci_driver data structure.
Allocating rte_pci_driver without referencing it after bond
creation causes memory leakage.

Signed-off-by: Jia Yu <jyu@vmware.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
9 years agomlx4: remove old VMware compatibility code
Adrien Mazarguil [Wed, 25 Mar 2015 10:34:31 +0000 (11:34 +0100)]
mlx4: remove old VMware compatibility code

CONFIG_RTE_LIBRTE_MLX4_COMPAT_VMWARE has no effect since this option enables
MLX4_PMD_COMPAT_VMWARE. This macro is not used by the PMD which expects
MLX4_COMPAT_VMWARE instead.

Because this option does not work and the related code is no longer useful
for VMware (as it actually supports the flow steering API), remove it
entirely.

Signed-off-by: Olga Shern <olgas@mellanox.com>
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
9 years agoi40e: disable buggy VEB switching
Jingjing Wu [Fri, 20 Mar 2015 07:31:48 +0000 (15:31 +0800)]
i40e: disable buggy VEB switching

Disable VEB switching by removing ALLOW_LB on SRIOV vsi.

If the source mac address of packet sent from VF is not listed in the
VEB's mac table, the VEB will switch the packet back to the VF.
It's a hardware issue. Enabling ALLOW_LB flag will block VF functions.

Test report: http://www.dpdk.org/ml/archives/dev/2015-March/015687.html

Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Tested-by: Huilong Xu <huilongx.xu@intel.com>
9 years agoi40e: fix flow director
Jingjing Wu [Wed, 25 Mar 2015 21:38:12 +0000 (05:38 +0800)]
i40e: fix flow director

This patch sets the local variable ctxt to zero to avoid uncertain
data causes error when creating a vsi for flow director.

Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
9 years agoixgbe: fix 5tuple filter overwrite
Jingjing Wu [Wed, 25 Mar 2015 04:47:13 +0000 (12:47 +0800)]
ixgbe: fix 5tuple filter overwrite

This patch corrects the index to fix the issue that is second 5tuple filter
overwrites the first one.

Fixes: 4c54a7e7bd42 ("ixgbe: migrate ntuple filter to new API")

Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Marvin Liu <yong.liu@intel.com>
9 years agoigb: fix flex filter check for unsupported 82576
Jingjing Wu [Thu, 26 Mar 2015 04:53:21 +0000 (12:53 +0800)]
igb: fix flex filter check for unsupported 82576

Flex filter is currently not supported for NIC 82576.
Only i350 and 82580 support it.
So The MAC_TYPE_FILTER_SUP_EXT is used to check whether the MAC type is
i350 or 82580.

Fixes: 231d43909a31 ("igb: migrate flex filter to new API")

Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Marvin Liu <yong.liu@intel.com>