Commit Graph

1719 Commits

Author SHA1 Message Date
Jerin Jacob
a9263e3c5a doc: use SPDX tag for Cavium copyright files
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-01-09 16:19:01 +01:00
Bruce Richardson
00d2970b57 doc: use SPDX tag for Intel copyright file
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2018-01-04 22:41:40 +01:00
Hemant Agrawal
d81734cacc drivers: use SPDX tag in NXP dpaa files
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-01-04 22:41:39 +01:00
Hemant Agrawal
131a75b6e4 drivers: use SPDX tag in NXP dpaa2 files
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-01-04 22:41:39 +01:00
Hemant Agrawal
a4862c9e1a license: introduce SPDX identifiers
The DPDK uses the Open Source BSD-3-Clause license for the core libraries
and drivers. The kernel components are naturally GPLv2 licensed.

Many of the files in the DPDK source code contain the full text of the
applicable license. For example, most of the BSD-3-Clause files contain a
full copy of the BSD-3-Clause license text.

Including big blocks of License headers in all files blows up the source
code with mostly redundant information.  An additional problem is that even
the same licenses are referred to by a number of slightly varying text
blocks (full, abbreviated, different indentation, line wrapping and/or
white space, with obsolete address information, ...) which makes validation
and automatic processing a nightmare.

To make this easier, DPDK uses of a single line reference to
Unique License Identifiers in source files as defined by the Linux
Foundation's SPDX project https://spdk.org.

Adding license information in this fashion, rather than adding full license
text, can be more efficient for developers; decreases errors; and improves
automated detection of licenses. The current set of valid, predefined SPDX
identifiers is set forth on the SPDX License List at
https://spdx.org/licenses/.

For example, to label a file as subject to the BSD-3-Clause license,
the following text would be used as the top line of the file.

SPDX-License-Identifier: BSD-3-Clause

Note: Any new file contributions in DPDK shall adhere to the above scheme.
It is also recommended to replace or at least amend the existing license
text in the code with SPDX-License-Identifiers.

Any exception to DPDK IP policies shall be approved by DPDK tech board and
DPDK Governing Board. Steps for any exception approval:
1. Mention the appropriate license identifier form SPDX. If the license is
   not listed in SPDX Licenses. It is the submitters responsibiliity to get
   it first listed.
2. Get the required approval from the DPDK Technical Board. Technical board
   may advise the author to check alternate means first. If no other
   alternatives are found and the merit of the contributions are important
   for DPDK's mission, it may decide on such exception with two-thirds vote
   of the members.
3. Technical board then approach Governing board for such limited approval
   for the given contribution only.

Any approvals shall be documented in "licenses/exceptions.txt" with record
dates.

Note: From the legal point of view, this patch is supposed to be only a
change to the textual representation of the license information, but in no
way any change to the actual license terms. With this patch applied, all
files will still be licensed under the same terms they were before.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2018-01-04 22:41:38 +01:00
Stephen Hemminger
90f3229fc0 doc: update oldest supported kernel in Linux guide
The DPDK needs to stay up to date with current LTS Linux kernel support.
If the kernel is older than LTS it is likely to be insecure and buggy.
Therefore only require DPDK to work on oldest LTS kernel.

If distribution vendors want to support DPDK on older kernels, that is
their choice. But the upstream source does not need to be cluttered
with support for this.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
2017-12-15 15:23:31 +01:00
John McNamara
cacfbcf82d doc: add template release notes for 18.02
Add template release notes for DPDK 18.02 with inline
comments and explanations of the various sections.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
2017-11-23 23:31:35 +01:00
Thomas Monjalon
7fe928713e doc: fix GSO guide as PDF
The PDF cannot be built because of some images integration being
forced as SVG. They are converted for PDF format, so the extension
must be a wildcard in the RST file.

Fixes: f6010c7655 ("doc: add GSO programmer's guide")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2017-11-15 19:00:28 +01:00
Thomas Monjalon
8999f8f679 doc: add bus libraries to release notes
Fixes: 919eeaccb2 ("bus/dpaa: introduce NXP DPAA bus driver skeleton")
Fixes: 7e7df6d0a4 ("bus/fslmc: introduce fsl-mc bus driver")
Fixes: c752998b5e ("pci: introduce library and driver")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2017-11-15 01:39:09 +01:00
John McNamara
09dd01ad9a doc: announce behaviour change to i40e RSS
Add deprecation notice to highlight a future change in the
default configuration behavior for flexible payload for RSS.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Andrey Chilikin <andrey.chilikin@intel.com>
2017-11-15 01:18:15 +01:00
Raslan Darawsheh
e1139d7511 doc: add tested platforms with Mellanox NICs
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
2017-11-13 06:36:27 +01:00
Rami Rosen
f88bf5a9c2 doc: fix a typo in EAL guide
Fix an error in DPDK programmer's guide (EAL section):
it should be rte_thread_get_affinity() instead of
rte_pthread_get_affinity().

Signed-off-by: Rami Rosen <rami.rosen@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-13 06:36:27 +01:00
Rami Rosen
eae494e7b6 doc: fix a typo in pipeline app guide
This patch fixes a trivial typo in ip pipeline app guide.

Signed-off-by: Rami Rosen <rami.rosen@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-13 06:36:27 +01:00
Luca Boccassi
5768fa9de2 doc: mention 17.11 LTS in contributing guide
Signed-off-by: Luca Boccassi <bluca@debian.org>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2017-11-12 05:40:00 +01:00
Bruce Richardson
43bec6e263 doc: update API/ABI policy
Following agreement at the DPDK Technical Board meeting of 2017-10-13 [1],
update the documentation with the ABI/API policy changes.

[1] http://dpdk.org/ml/archives/dev/2017-October/079961.html

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Yuanhan Liu <yliu@fridaylinux.org>
Acked-by: Kevin Traynor <ktraynor@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2017-11-12 05:20:52 +01:00
Shahaf Shuler
3004d34541 doc: update deprecation of ethdev offload API
Update deprecation notice for the new ethdev offloads API.
Deprecation of the old offloads API is set to 18.05.

Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2017-11-12 05:20:52 +01:00
Gaetan Rivet
d87a0ce0ad doc: postpone devargs clean-up
These changes were planned for 17.11 but were proposed too late.
Postpone those to v18.02 instead.

Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
2017-11-12 05:20:52 +01:00
John McNamara
c9b13d9440 doc: update release notes for 17.11
Fix grammar, spelling and formatting of DPDK 17.11 release notes.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
2017-11-12 05:20:52 +01:00
Yulong Pei
c0f6cd9a35 doc: add tested Intel platforms with Intel NICs
Add tested Intel platforms with Intel NICs to the release note.

Signed-off-by: Yulong Pei <yulong.pei@intel.com>
2017-11-12 05:20:52 +01:00
Santosh Shukla
4e8c3c554f doc: fix mempool option in octeontx guide
Fixes: f820b58966 ("doc: add octeontx ethdev driver documentation")

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-12 05:02:42 +01:00
Santosh Shukla
48191dde6a doc: add octeontx mempool guide
This commit adds a section to the docs listing the mempool
device PMDs available.

It then adds the octeontx fpavf mempool PMD to the listed mempool
devices.

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-12 05:02:42 +01:00
Santosh Shukla
26cb0a7241 doc: add octeontx platform guide
This commit adds a section to the docs listing the platform
guide for the PMDs.

It then adds the octeontx platform guide to the listed platform
devices.

Patch also removes platform specific duplicate setup information from
eventdev/octeontx.rst, nics/octeontx.rst and update to
plaform/octeontx.rst.

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-12 05:02:42 +01:00
Moti Haimovsky
8cfe3aaf34 doc: update mlx4 documentation
This updates mlx4 documentation and DPDK release notes
to reflect the PMD support for rdma-core from linux-rdma.

- PMD is now freed from Mellanox OFED and now only depends on the
  public rdma-core package (v15 and above) instead.
  (see https://github.com/linux-rdma/rdma-core/releases)
  This PMD should run under Linux v4.14 and above.
- In case any of the above requirements can't be satisfied,
  Mellanox OFED v4.2 and above also provide an updated rdma-core
  as well back-ported kernel modules for most Linux distributions
  and previous Linux versions.
  (see http://www.mellanox.com/page/products_dyn?product_family=26).

Signed-off-by: Moti Haimovsky <motih@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2017-11-12 05:02:42 +01:00
Moti Haimovsky
b280c98f70 doc: remove mlx4 Rx inline support
This commit removes the stale MLX4_INLINE_RECV_SIZE environment
variable from the documentation.

Fixes: 056eaf2e6d ("net/mlx4: drop inline receive support")

Signed-off-by: Moti Haimovsky <motih@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2017-11-12 05:02:42 +01:00
Moti Haimovsky
7c71f4a621 doc: remove mlx4 Tx inline compilation option
This patch removes the stale CONFIG_RTE_LIBRTE_MLX4_MAX_INLINE compilation
option from the documentation.

Fixes: 586db08058 ("net/mlx4: remove Tx inline compilation option")

Signed-off-by: Moti Haimovsky <motih@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2017-11-12 05:02:42 +01:00
Radu Nicolau
13e855a3b9 doc: add inline crypto feature
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
2017-11-12 05:02:42 +01:00
Thomas Monjalon
651982e5ef doc: move fast mbuf free feature in net guide
The feature was added at the end of the table.
And the description was between the anchor _nic_features_timesync
and its title.
It is moved near related features with a new anchor.

It is also renamed from "mbuf fast free" to "fast mbuf free".

Fixes: d6f90afd30 ("ethdev: add mbuf fast free Tx offload")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
2017-11-12 04:16:40 +01:00
Ilya V. Matveychikov
4c20622a95 examples/ipv4_multicast: fix segments number type
Fixes: 97cb466d65 ("mbuf: use 2 bytes for port and nb segments")

Signed-off-by: Ilya V. Matveychikov <matvejchikov@gmail.com>
2017-11-12 04:15:54 +01:00
Rasesh Mody
db86fbe54d doc: update qede PMD NIC guide
Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
2017-11-10 08:10:59 +00:00
Thomas Monjalon
9a5a540566 doc: adjust column width of PMD overview tables
The net PMD overview table is big and required to be shrunk.
The crypto PMD tables had variable column sizes: the latest
columns were smaller.

The minimum width is set to 0.9em without any forced padding.
The maximum width is set to 2em.
The width of the first column set by sphinx is overridden to 0
for full elasticity.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-08 02:48:26 +01:00
Thomas Monjalon
18ed6507f1 doc: move dom0 removal notice in removed items
Since the release notes has a new section for removed items,
the dom0 removal notice can be moved there.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2017-11-08 02:46:49 +01:00
Shreyansh Jain
1b6eee87e8 doc: add DPAA2 event adapter to release notes
Signed-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>
Acked by: Nipun Gupta <nipun.gupta@nxp.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-08 02:19:41 +01:00
Akhil Goyal
6db0713e25 doc: add security library to release notes
Removed the deprication notice for ABI breakage and updated
release notes for rte_security.

Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
2017-11-08 02:17:05 +01:00
Pablo de Lara
6c066bacbf doc: update IPsec multi-buffer library version
A new library of the IPsec Multi-buffer library has been
released (0.47), which is used by the AESNI GCM PMD.

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2017-11-08 02:17:05 +01:00
Rami Rosen
04cf033427 doc: fix a typo in EAL guide
This patch fixes a trivial typo in DPDK programmer's guide:
it should be rte_cpu_get_features() instead of rte_cpu_get_feature().

Signed-off-by: Rami Rosen <rami.rosen@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-08 02:01:17 +01:00
Ferruh Yigit
7a62910653 devtools: add script to get maintainers from patch
This is a wrapper to Linux kernel get_maintainer.pl file and only
supports parsing MAINTAINERS file (no git fallback etc..)

Requires DPDK_GETMAINTAINER_PATH devel config option set, please check
devtools/load-devel-config.

DPDK_GETMAINTAINER_PATH should be full path to the get_maintainer.pl
script, like:
DPDK_GETMAINTAINER_PATH=~/linux/scripts/get_maintainer.pl

Can be used individually:
./devtools/get-maintainer.sh <my.patch>

Or via git send-email, to add maintainers automatically:
git send-email --to-cmd ./devtools/get-maintainer.sh \
--cc dev@dpdk.org HEAD -4

Currently there is an ugly workaround to be able to use Linux script out
of the kernel tree, later better method can replace it.

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
2017-11-08 00:38:46 +01:00
Thomas Monjalon
f774eaf817 devtools: rename build dependency of mlx drivers
The Mellanox drivers were requiring MOFED at compilation time.
It is now possible to use the upstream rdma-core package.
So the dependency option is renamed in the build tool.

Fixes: 43e9d9794c ("net/mlx5: support upstream rdma-core")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
2017-11-07 23:46:24 +01:00
Nikhil Rao
3ffa680994 doc: add event eth Rx adapter guide
Add programmer's guide doc to explain the use of the
Event Ethernet Rx Adapter library.

Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2017-11-07 23:09:45 +01:00
Bernard Iremonger
fdec9301f5 doc: add flow classify guides
The Flow Classify Library Programmers Guide documents
librte_flow_classify.

The Flow Classify Sample Application Guide documents the
flow_classify sample application which is used to
demonstrate the use of the Flow Classify Library,
librte_flow_classify.

Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-07 23:02:12 +01:00
Ori Kam
3e0ceb9f17 doc: add basic howto for flow API
As the rte_flow is a new complex module in the DPDK.
In order to ease developers in to using this feature
it was suggested to supply a simple howto doc.

Signed-off-by: Ori Kam <orika@mellanox.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-07 22:53:22 +01:00
Ori Kam
4a3ef59a10 examples/flow_filtering: add simple demo of flow API
This application shows a simple usage of the
rte_flow API for hardware filtering offloading.

In this demo we are filtering specific IP to
specific target queue, while sending all the
rest of the packets to other queue.

Signed-off-by: Ori Kam <orika@mellanox.com>
2017-11-07 22:40:55 +01:00
Jianfeng Tan
d4a586d29e bus/vdev: move code from EAL into a new driver
Move the vdev bus from lib/librte_eal to drivers/bus.

As the crypto vdev helper function refers to data structure
in rte_vdev.h, so we move those helper function into drivers/bus
too.

Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
2017-11-07 16:54:07 +01:00
Jianfeng Tan
49c80d31fe cryptodev: remove vdev create function
Remove rte_cryptodev_create_vdev() for duplication.

Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2017-11-07 16:28:47 +01:00
Maxime Coquelin
447e0d3797 net/vhost: add parameter to enable IOMMU feature
Introduce a new iommu-support parameter to Vhost PMD that
passes the RTE_VHOST_USER_IOMMU_SUPPORT flag at vhost
device register time.

Default value is 0, meaning that IOMMU support is disabled
if not specified explicitly.

Example to enable IOMMU support for a given device:

--vdev 'net_vhost0,iface=/tmp/vhost-user2,iommu-support=1'

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Yuanhan Liu <yliu@fridaylinux.org>
Tested-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Acked-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
2017-11-07 14:19:30 +01:00
Maxime Coquelin
002d6a7e55 vhost: add flag to enable IOMMU support
Qemu versions from v2.7.0 to v2.9.0 have their reply-ack protocol
feature implementation broken with multiqueue. The reply-ack
protocol feature is optional except for IOMMU feature.

This patch introduce a new RTE_VHOST_USER_IOMMU_SUPPORT flag to
enable VIRTIO_F_IOMMU_PLATFORM virtio feature.

By default, the IOMMU support is now disabled.

Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Yuanhan Liu <yliu@fridaylinux.org>
Tested-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Acked-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
2017-11-07 14:19:11 +01:00
Shahaf Shuler
d296d7d005 doc: update mlx5 guide
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-07 10:19:02 +01:00
Jasvinder Singh
448c23320f doc: fix description of TM function in testpmd
Fixes: 5b590fbe09 ("app/testpmd: add traffic management forwarding mode")

Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-07 08:06:26 +00:00
Beilei Xing
286e71dc1b doc: add i40e limitation of VF VLAN strip
This patch adds limitation of VF VLAN strip function.

Signed-off-by: Beilei Xing <beilei.xing@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-03 23:58:35 +01:00
Wenzhuo Lu
8c22b59a17 doc: add clarification for i40e 16 byte desc
The description of i40e 16 byte descriptor is not clear
enough. Add more details.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2017-11-01 22:52:05 +01:00
Wenzhuo Lu
f8879d22bc doc: add how to set VF MAC address on ixgbe
Add the description of how to add a MAC address for a VF
from PF on ixgbe.

Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
2017-11-01 22:36:22 +01:00
Nélio Laranjeiro
92a67a70fd net/mlx5: fix flows when VXLAN tunnel is 0
Fix a strange behavior from the NIC, when the flow starts with a VXLAN
layer with a VNI equals to zero all the traffic will match within this
rule.

Fixes: 2e709b6aa0 ("net/mlx5: support VXLAN flow item")
Cc: stable@dpdk.org

Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
2017-11-01 22:17:06 +01:00
Jerin Jacob
52dbd92de7 doc: add octeontx to release notes
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2017-11-01 22:17:06 +01:00
Thomas Monjalon
505a6925d8 mempool: increase ABI version
API and ABI of mempool library has been changed in 17.11.

Fixes: 02604520b2 ("mempool: remove unused flags argument")
Fixes: 0cc0f8aaa3 ("mempool: change flags from int to unsigned int")
Fixes: 6eac187bff ("mempool: add flags arg in xmem size and usage")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
2017-11-06 23:59:19 +01:00
Thomas Monjalon
5b9ddf55a8 doc: add IOVA aware API changes in release notes
The wording changes have been done in the API without breaking
the ABI. The deprecated fields and symbols can be removed later
when an another ABI change will be required.
The deprecation notice can be removed.

The release notes describe the new available API with IOVA wording.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-11-06 22:46:29 +01:00
Santosh Shukla
c450937306 cryptodev: rename physical address type to IOVA
Renamed data type from phys_addr_t to rte_iova_t.

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2017-11-06 22:44:26 +01:00
Santosh Shukla
455da54539 mbuf: rename physical address to IOVA
Rename buf_physaddr to buf_iova.
Keep the deprecated name in an anonymous union to avoid breaking
the API.

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
2017-11-06 22:44:26 +01:00
Srisivasubramanian S
1a2ba426a6 net/liquidio: add support for 10GBase-T cards
Signed-off-by: Srisivasubramanian S <ssrinivasan@caviumnetworks.com>
Signed-off-by: Shijith Thotton <shijith.thotton@caviumnetworks.com>
2017-10-27 01:05:55 +02:00
Marko Kovacevic
bef33b0a9d doc: add new introduction to sample app guides
Add new Introduction Section into the sample app guides.

Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-27 01:24:44 +02:00
Herakliusz Lipiec
7cacb05655 doc: add generic build instructions for sample apps
Moved duplicated, and occasionally outdated, doc sections from each
of the sample app guides chapters to a common chapter at the start.

This reduces the duplication in the docs and provides a single
point of reference for compiling the sample apps.

Signed-off-by: Herakliusz Lipiec <herakliusz.lipiec@intel.com>
Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
2017-10-27 01:23:53 +02:00
Nikhil Rao
c018dbf5e0 doc: add event eth Rx adapter to release notes
Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2017-10-27 00:57:29 +02:00
Pavan Nikhilesh
12a33b67dd doc: update software event device
Update software event device documentation to include use of service
cores for event distribution.

Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-27 00:53:07 +02:00
Pavan Nikhilesh
c86ced193a doc: update eventdev guide
Update the guide with event queue configuration and event enqueue
operation.

Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
2017-10-27 00:53:07 +02:00
Gaetan Rivet
c752998b5e pci: introduce library and driver
The PCI lib defines the types and methods allowing to use PCI elements.

The PCI bus implements a bus driver for PCI devices by constructing
rte_bus elements using the PCI lib.

Move the relevant code out of the EAL to its expected place.

Libraries, drivers, unit tests and applications are updated to use the
new rte_bus_pci.h header when necessary.

Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
2017-10-26 23:17:31 +02:00
Gaetan Rivet
1a2d1f62d7 pci: make specialized parsing functions private
Do not expose the minute implementations of PCI parsing.
This leaves only the all-purpose rte_pci_addr_parse, which is simpler to
use.

Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
2017-10-26 23:17:31 +02:00
Gaetan Rivet
7a25c9e3c8 pci: deprecate misnamed functions
Rename misnamed functions and describe the change in a deprecation
notice.

Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
2017-10-26 23:17:31 +02:00
David Harton
289ba0c0f5 ethdev: allow returning error on VLAN offload ops
Some devices may not support or fail setting VLAN offload
configuration based on dynamic circumstances so the
vlan_offload_set_t vector is modified to return an int so
the caller can determine success or not.

rte_eth_dev_set_vlan_offload is updated to return the
value provided by the vector when called along with restoring
the original offload configs on failure.

Existing vlan_offload_set_t vectors are modified to return
an int.  Majority of cases return 0 but a few that actually
can fail now return their failure codes.

Finally, a vlan_offload_set_t vector is added to virtio
to facilitate dynamically turning VLAN strip on or off.

Signed-off-by: David Harton <dharton@cisco.com>
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
2017-10-26 02:33:01 +02:00
Yongseok Koh
fb870be5a8 net/mlx5: fix Tx doorbell memory barrier
Configuring UAR as IO-mapped makes maximum throughput decline by
noticeable amount. If UAR is configured as write-combining register,
a write memory barrier is needed on ringing a doorbell.

rte_wmb() is mostly effective when the size of a burst is comparatively
small. Revert the register back to write-combining and enforce a write
memory barrier instead, except for vectorized Tx burst routines.
Application can change it by setting MLX5_SHUT_UP_BF under its own
necessity.

Fixes: 9f9bebae55 ("net/mlx5: don't map doorbell register to write combining")

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
2017-10-26 02:33:01 +02:00
Olivier Matz
380a7aab1a mbuf: rename deprecated VLAN flags
PKT_RX_VLAN_PKT and PKT_RX_QINQ_PKT are deprecated for a while.
As explained in [1], these flags were kept to let the applications and
PMDs move to the new flag. There is also a need to support Rx vlan
offload without vlan strip (at least for the ixgbe driver).

This patch renames the old flags for this feature, knowing that some
PMDs were using PKT_RX_VLAN_PKT and PKT_RX_QINQ_PKT to indicate that
the vlan tci has been saved in the mbuf structure.

It is likely that some PMDs do not set the proper flags when doing vlan
offload, and it would be worth making a pass on all of them.

Link: [1] http://dpdk.org/ml/archives/dev/2017-June/067712.html

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2017-10-26 02:33:01 +02:00
Gaetan Rivet
00a3d8104a ethdev: remove detachable device flag
This flag is not necessary at the ether layer anymore.
Buses are able to advertise their hotplug support. The ether layer can
rely upon this capability instead of a special flag.

Signed-off-by: Gaetan Rivet <gaetan.rivet@6wind.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2017-10-26 02:33:01 +02:00
Elza Mathew
a4fd5eeead app/testpmd: refine xstats show
When using "show port xstats all" command to show xstats, the output
is usually too long to obtain what you really want, especially when
multi-queue is enabled.

Added an option to set whether zero values should be displayed
or not for xstats. The "set xstats-hide-zero on|off" command enables
the user to decide if the zero values should be shown while
displaying xstats.

Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Signed-off-by: Elza Mathew <elza.mathew@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2017-10-26 02:33:01 +02:00
Xiao Wang
9eff0d0f97 doc: add switch restart support to fm10k guide
Document how DPDK app should handle the event of switch quit-restart
to resume its network without an app-level restart.

Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-26 02:33:01 +02:00
Shreyansh Jain
826b742b1c doc: update release note for DPAA PMD support
Signed-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-26 02:33:00 +02:00
Ori Kam
83619eb2a8 doc: update mlx5 flow count limitations
Signed-off-by: Ori Kam <orika@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
2017-10-26 02:33:00 +02:00
Tomasz Duszynski
00fabc423d net/mrvl: update copyright holders
Add Marvell International Ltd. to the copyright holders.

Fixes: 0ddc9b815b ("net/mrvl: add net PMD skeleton")
Fixes: 1a286a1139 ("doc: add mrvl NIC guide")

Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
2017-10-26 02:33:00 +02:00
Shahaf Shuler
93a91beef7 doc: update release notes for mlx5 driver
Signed-off-by: Shahaf Shuler <shahafs@mellanox.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-26 02:33:00 +02:00
Akhil Goyal
ec17993a14 examples/ipsec-secgw: support security offload
Ipsec-secgw application is modified so that it can support
following type of actions for crypto operations
1. full protocol offload using crypto devices.
2. inline ipsec using ethernet devices to perform crypto operations
3. full protocol offload using ethernet devices.
4. non protocol offload

Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
Signed-off-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Signed-off-by: Aviad Yehezkel <aviadye@mellanox.com>
2017-10-26 03:12:56 +02:00
Akhil Goyal
0a23d4b6f4 crypto/dpaa2_sec: support protocol offload IPsec
Driver implementation to support rte_security APIs

Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
2017-10-26 03:12:41 +02:00
Akhil Goyal
40ff8c99ea doc: add details of security library
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-26 03:11:06 +02:00
Akhil Goyal
c261d1431b security: introduce security API and framework
rte_security library provides APIs for security session
create/free for protocol offload or offloaded crypto
operation to ethernet device.

Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Signed-off-by: Aviad Yehezkel <aviadye@mellanox.com>
2017-10-26 03:10:51 +02:00
Boris Pismenny
60fb11ff05 ethdev: add flow action for crypto
The crypto action is specified by an application to request
crypto offload for a flow.

Signed-off-by: Boris Pismenny <borisp@mellanox.com>
Signed-off-by: Aviad Yehezkel <aviadye@mellanox.com>
Reviewed-by: John McNamara <john.mcnamara@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-26 03:10:41 +02:00
Akhil Goyal
eadb4fa1e1 cryptodev: support security APIs
Security ops are added to crypto device to support
protocol offloaded security operations.

Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
2017-10-26 03:09:51 +02:00
Declan Doherty
b1ce0ad9e8 cryptodev: break dependency on PCI device bus
Removes any dependency of librte_cryptodev on the PCI device
infrastructure code and removes the functions which were virtual
device specific.

Updates QAT crypto PMD to remove dependencies on rte_cryptodev_pci.h
and replaces those calls with the new bus independent functions.

Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2017-10-25 18:11:01 +02:00
Declan Doherty
f2f020d210 cryptodev: break dependency on virtual device bus
Removes any dependency of librte_cryptodev on the virtual device
infrastructure code and removes the functions which were virtual
device specific.

Updates all virtual PMDs to remove dependencies on rte_cryptodev_vdev.h
and replaces those calls with the new bus independent functions.

Due to these changes, the cryptodev ABI version gets bumped.

Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Tested-by: Tomasz Duszynski <tdu@semihalf.com>
2017-10-25 18:11:01 +02:00
Declan Doherty
9e6edea418 cryptodev: add APIs to assist PMD initialisation
Adds new PMD assist functions which are bus independent for driver to
create and destroy new device instances.

Also includes function to parse parameters which can be passed to
driver on device initialisation.

Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Fiona Trahe <fiona.trahe@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2017-10-25 18:11:01 +02:00
Radu Nicolau
bbabfe6e4e examples/ipsec_secgw: support jumbo frames
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
Reviewed-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2017-10-25 18:11:00 +02:00
Tomasz Duszynski
cdea34452b crypto/mrvl: update copyright holders
Add Marvell International Ltd. to the copyright holders.

Signed-off-by: Tomasz Duszynski <tdu@semihalf.com>
2017-10-25 18:10:40 +02:00
Pavan Nikhilesh
45a914c5bd event/octeontx: support event Rx adapter
Add Rx adapter queue add and delete API for both generic eth_devices as
well as HW backed eth_octeontx which supports direct event injection to
event device.
The HW injected event needs to be converted into mbuf, previously this
was done in eth_octeontx during rx_burst now it is moved to
event_octeontx as events from Rx adapter are dequeued directly from
event device.

Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
Reviewed-by: Nikhil Rao <nikhil.rao@intel.com>
2017-10-25 14:03:43 +02:00
Harry van Haaren
cbdd342060 examples/service_cores: add new sample application
This commit adds a new sample app, which showcases the value
of running services. In particular it allows the application
to dynamically schedule services to service-cores.

The sample app itself registers a number of dummy services,
and applies different profiles to them at runtime. Note that
this sample application does not forward any traffic - it
demonstrates advanced usage of the service cores API.

Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: Gage Eads <gage.eads@intel.com>
2017-10-24 23:01:01 +02:00
Ferruh Yigit
be41ac2a33 flow_classify: introduce flow classify library
The following APIs's are implemented in the
librte_flow_classify library:

rte_flow_classifier_create
rte_flow_classifier_free
rte_flow_classifier_query
rte_flow_classify_table_create
rte_flow_classify_table_entry_add
rte_flow_classify_table_entry_delete

The following librte_table API's are used:
f_create to create a table.
f_add to add a rule to the table.
f_del to delete a rule from the table.
f_free to free a table
f_lookup to match packets with the rules.

The library supports counting of IPv4 five tupple packets only,
ie IPv4 UDP, TCP and SCTP packets.

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Jasvinder Singh <jasvinder.singh@intel.com>
2017-10-24 22:26:54 +02:00
Zhiyong Yang
3a643acd4f doc: add virtio LSC note
Virtio PMD already has supported link status change(lsc), but VM which
must be created by qemu 2.7.0 and above can support it when vhost
user disconnects, since the capability to detect vhost user disconnection
is introduced in qemu 2.7.0. The patch updates doc to let user know that.

Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Yuanhan Liu <yliu@fridaylinux.org>
2017-10-24 21:28:42 +02:00
Cristian Dumitrescu
8b05d0be6a table: update library version
Updated map file to current API and bumped up ABI version.

Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
2017-10-24 13:38:31 +02:00
Olivier Matz
091eaac258 log: remove deprecated functions
Remove rte_set_log_level(), rte_get_log_level(),
rte_set_log_type(), and rte_get_log_type().

Also update librte_eal.so version in docuementation.
The LIBABIVER variable in eal has already been modified in
commit f26ab687a7 ("eal: remove Xen dom0 support").

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
2017-10-24 01:24:21 +02:00
Thomas Monjalon
1fb9730997 doc: fix highlight of bumped libs in release notes
The libraries which have their ABI version increased in this release
must be prepended with a + sign to make them appear clearly.

Fixes: f8244c6399 ("ethdev: increase port id range")
Fixes: ec51443cc9 ("gso: add Generic Segmentation Offload API framework")

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Zhiyong Yang <zhiyong.yang@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2017-10-23 22:35:36 +02:00
Cristian Dumitrescu
5bf4bebb09 doc: add ethdev traffic metering and policing guide
Add new section in the Programmer Guide for the ethdev traffic metering
and policing (MTR) API.

Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-20 14:10:06 +02:00
Cristian Dumitrescu
1634de2728 ethdev: add flow action for metering and policing
Metering and policing action typically sits on top of flow classification,
which is why MTR objects are enabled through a newly introduced flow
action.

The configuration of MTR objects is done in their own namespace (rte_mtr)
within the librte_ether library. The MTR object is hooked into ethdev RX
processing path using the "meter" flow action.

Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2017-10-20 14:07:12 +02:00
Brian Brooks
f827796513 doc: add arm64 to Linux guide
Signed-off-by: Brian Brooks <brian.brooks@arm.com>
Reviewed-by: Song Zhu <song.zhu@arm.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-13 23:47:12 +02:00
Thomas Monjalon
787c4aeaf3 doc: remove fm10k features description for SSE
The features described for scalar fm10k and its vector implementations
are the same.
No need to distinguish them in features description.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-13 23:47:12 +02:00
Bruce Richardson
d6f93addff doc: add note on hardware support deprecation
Following agreement at the DPDK Technical Board meeting [1], the policy
that hardware support deprecation should be treated as though it were an
ABI break needs to be documented in the contributors guide.

[1] http://dpdk.org/ml/archives/dev/2017-September/074613.html

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-13 23:47:12 +02:00
Zhiyong Yang
c6d6982dc9 doc: update port id type
Since port id has changed from uint8_t to uint16_t in dpdk code,
So update the change in related doc.

Fixes: f8244c6399 ("ethdev: increase port id range")

Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2017-10-13 21:57:49 +02:00
Moti Haimovsky
9f57340a80 net/mlx4: restore Rx offloads
This patch adds hardware offloading support for IPV4, UDP and TCP checksum
verification, including inner/outer checksums on supported tunnel types.

It also restores packet type recognition support.

Signed-off-by: Vasily Philipov <vasilyf@mellanox.com>
Signed-off-by: Moti Haimovsky <motih@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2017-10-13 01:18:48 +01:00