3002 Commits

Author SHA1 Message Date
David Marchand
e7fd5a3bbe version: 19.11-rc0
Start a new release cycle with empty release notes.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2019-08-13 14:59:02 +02:00
Rami Rosen
78b04aaf77 doc: add guidelines for initial PMD submission
This patch for DPDK Contributor's Guidelines indicates the repos
against which a new PMD should be prepared; for example, for new
network ethernet PMDs it should be dpdk-next-net, and for new crypto
PMDs it should be dpdk-next-crypto. For other new PMDs, the
contributor should refer to the MAINTAINERS file. Though this may seem
obvious, it is not mentioned in DPDK documentation.

Signed-off-by: Rami Rosen <ramirose@gmail.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>

Last contribution, last commit closing the release.
Thank you Rami, you will be missed.
2019-08-11 11:34:24 +02:00
Matan Azrad
200e96c7df doc: announce ethdev ABI change for LRO fields
It may be needed by the user to limit the LRO session packet size.
In order to allow the above limitation, a new Rx configuration may be
added for the maximum LRO session size.

A new capability may be added too to expose the maximum LRO session size
supported by the port.

Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2019-08-10 23:36:24 +02:00
Pavan Nikhilesh
c5b2e78d11 doc: announce ethdev API changes in offload flags
Add new offload flags ``DEV_RX_OFFLOAD_RSS_HASH`` and
``DEV_RX_OFFLOAD_FLOW_MARK``.
Add new function ``rte_eth_dev_set_supported_ptypes`` to allow application
to set specific ptypes to be updated in ``rte_mbuf::packet_type``

Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
2019-08-10 23:07:12 +02:00
Thomas Monjalon
d00c149791 doc: announce removal of old port count function
The function rte_eth_dev_count() was marked as deprecated in DPDK 18.05
in commit d9a42a69febf ("ethdev: deprecate port count function").
It is planned to be removed after the next LTS release.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: David Marchand <david.marchand@redhat.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
2019-08-10 22:34:39 +02:00
Andrew Rybchenko
fbe7ac9f3a doc: announce ethdev functions will not return void
void return value is bad for get API (like rte_eth_dev_info-get())
since caller does not know if the function does its job or not and
output value is filled in.

void return value is bad for state changing API (like
rte_eth_promiscuous_enable()) since caller should use get API
to understand if state is really changed.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Jerin Jacob <jerinj@marvell.com>
2019-08-10 22:33:38 +02:00
Stephen Hemminger
9c8a4aba02 doc: announce ethernet structures alignment changes
Tell users about upcoming changes to rte_ether_addr and
rte_ether_header.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2019-08-10 22:21:31 +02:00
David Marchand
07f08a96f5 doc: announce lcore config struct removal from ABI
New accessors have been introduced to provide the hidden information.
This symbol can now be kept internal.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2019-08-08 17:55:22 +02:00
David Marchand
23be1cbfa3 doc: announce malloc virt2phys function removal
This symbol has been deprecated for quite some time.
Let's drop it as soon as possible.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
2019-08-08 17:54:53 +02:00
David Marchand
411b586f0e doc: announce CPU flags check function removal
This symbol has been deprecated for quite some time.
Let's drop it as soon as possible.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Aaron Conole <aconole@redhat.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2019-08-08 17:54:08 +02:00
Viacheslav Ovsiienko
3a418d1d3d doc: add limitation with mlx5 Tx inline settings
Introduces the possible limitations on maximal Tx queue
size in descriptors if Tx inline data are enabled.

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
2019-08-08 16:53:49 +02:00
Viacheslav Ovsiienko
e98e44bace doc: update Tx inline settings in mlx5 guide
This patch updates mlx5 documentation in parts:

  - txq_inline_min parameter is described in more details,
    values are fixed

  - maximal amount of segments in multi-segment packets.

Fixes: 38b4b397a57d ("net/mlx5: add Tx configuration and setup")

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Raslan Darawsheh <rasland@mellanox.com>
2019-08-07 15:27:45 +02:00
John McNamara
e090fdb41a doc: advise patching third party dependencies
Added a note to the getting started guides about patching third
party libraries/dependencies to avoid any known vulnerabilities.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
2019-08-06 23:48:54 +02:00
Thomas Monjalon
030febb664 doc: remove deprecated ethdev features
As legacy filter API "filter_ctrl" is superseded since 2017
by the rte_flow API, and got the deprecated attribute in DPDK 19.05,
it is time to remove the associated features from the matrix.
Not documenting deprecated features as supported will avoid confusion.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
2019-08-06 23:41:55 +02:00
Thomas Monjalon
4710b1133e doc: add more details about mlx5 offloads
Add firmware config for MPLS and DevX (required by LRO and DR).

Add a table for queue offloads requirements.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Raslan Darawsheh <rasland@mellanox.com>
2019-08-06 17:42:12 +02:00
Thomas Monjalon
bdc3a54225 doc: add mlx5 design details
Some details about libibverbs were missing:
- automatic detection by meson
- main ways to access the device

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Raslan Darawsheh <rasland@mellanox.com>
2019-08-06 17:42:12 +02:00
Thomas Monjalon
499b461f90 doc: remove useless console syntax in mlx guides
It is not needed to use "console" syntax highlighting
for literal blocks.
The file is easier to read by removing the code-block lines
and simply having double colons in previous line.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Raslan Darawsheh <rasland@mellanox.com>
2019-08-06 17:42:12 +02:00
Thomas Monjalon
23bdbfec2b doc: fix wording and formatting of mlx5 guide
These are simple fixes of punctuation, anchor placement
or wording.
The table format is fixed to avoid having a long line
in the first column.

Fixes: 909be50a34d0 ("doc: update Mellanox guides and release notes")
Cc: stable@dpdk.org

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Raslan Darawsheh <rasland@mellanox.com>
2019-08-06 17:42:12 +02:00
Thomas Monjalon
ae28c04547 doc: improve firmware configuration in mlx5 guide
The command mlxconfig was not enough explained and too much verbose
at the same time.
The syntax is now explained in introduction before listing the options,
without repeating the commands.
Some options, which are explained elsewhere in the doc,
are added to this list.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Raslan Darawsheh <rasland@mellanox.com>
2019-08-06 17:42:12 +02:00
Viacheslav Ovsiienko
3502b05925 net/mlx5: fix packet size inline settings
This patch fixes the default settings for packet size to inline
with Enhanced Multi-Packet Write feature, allowing 256B packets
to be inlined with Out-Of-the-Box settings.

Fixes: 50724e1bba76 ("net/mlx5: update Tx definitions")

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
2019-08-06 17:42:12 +02:00
Mesut Ali Ergin
9956d90043 doc: update release notes for i40e MARK+RSS
Signed-off-by: Mesut Ali Ergin <mesut.a.ergin@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-08-06 11:39:55 +02:00
Raslan Darawsheh
e0a0b3d698 doc: add tested platforms with Mellanox NICs
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
2019-08-06 09:28:40 +02:00
Jerin Jacob
a91ca789ed doc: add tested Marvell integrated NIC platforms
Add tested Marvell integrated NIC platforms to v19.08 release note.

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-08-05 17:40:21 +02:00
Rasesh Mody
8e6281f488 doc: add co-existence consideration for qede
Add and update co-existence considerations for qede PMD

Cc: stable@dpdk.org

Signed-off-by: Rasesh Mody <rmody@marvell.com>
2019-08-05 17:23:14 +02:00
Rasesh Mody
2efba79b19 doc: add co-existence consideration for bnx2x
Add and update co-existence considerations for bnx2x PMD

Cc: stable@dpdk.org

Signed-off-by: Rasesh Mody <rmody@marvell.com>
2019-08-05 17:23:09 +02:00
Rasesh Mody
45a49cc7e7 doc: use SPDX tag for bnx2x guide
Use SPDX tag for bnx2x PMD guide

Signed-off-by: Rasesh Mody <rmody@marvell.com>
2019-08-05 17:23:04 +02:00
Hemant Agrawal
cc77856795 doc: replace tools guide license with SPDX tag
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
2019-08-05 16:19:21 +02:00
Maxime Coquelin
79532b35d6 doc: replace PVP guide license with SPDX tag
Signed-off-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-08-05 16:01:42 +02:00
Zhaoyan Chen
cb8a35c22a doc: update supported i40e driver and firmware version
Update supported Intel NIC driver version and firmware version

Signed-off-by: Zhaoyan Chen <zhaoyan.chen@intel.com>
2019-08-05 15:50:56 +02:00
Jerin Jacob
786e0c74e6 doc: fix link in release notes
Fix the following doc build warning by correcting path.

doc/guides/rel_notes/release_18_05.rst:285:
WARNING: unknown document: ../rawdevs/ifpga_rawdev

Fixes: 473c88f9b391 ("drivers/raw: remove rawdev from directory names")

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-08-02 21:58:59 +02:00
John McNamara
99ad894dbd doc: update release notes for 19.08
Fix grammar, spelling and formatting of DPDK 19.08 release notes.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
2019-07-31 00:22:33 +02:00
Wenjie Li
8ac60cac36 doc: add tested Intel platforms with Intel NICs
Add tested Intel platforms with Intel NICs to v19.08 release note.

Signed-off-by: Wenjie Li <wenjiex.a.li@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-07-31 00:22:33 +02:00
Thomas Monjalon
8cd3a39938 doc: update features supported by mlx
Flow control was not documented as a supported feature
since the first fill of features matrix for mlx drivers.

Flow API and CRC offload flag support in mlx4 were missing in the
feature matrix when they were implemented (see below commits).

Fixes: 46d5736a7049 ("net/mlx4: support basic flow items and actions")
Fixes: ce07b1514d59 ("net/mlx4: fix CRC stripping capability report")
Fixes: e86b85ca757b ("doc: fill nics features matrix for mlx")
Cc: stable@dpdk.org

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Matan Azrad <matan@mellanox.com>
2019-07-31 00:22:33 +02:00
Thomas Monjalon
b6e3d7a61e doc: remove unused maintainer role from guide
The backup maintainer role is not explicitly used in the file MAINTAINERS.
Listing names in a priority order is preferred and more flexible
than explicit named roles.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Reviewed-by: David Marchand <david.marchand@redhat.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2019-07-30 23:28:22 +02:00
Bruce Richardson
54dcfdee85 drivers/raw: standardize naming
The driver names for rawdevs were both different in make and meson builds
and were non-standard in the make version in that some included "rawdev" in
the name while others didn't.

Therefore, for global consistency of naming, we can use "rte_rawdev" rather
than "rte_pmd" for the prefix for the libraries. While most other driver
categories use "rte_pmd" as a prefix, there is precedent for this in the
mempool drivers use "rte_mempool" as a prefix.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2019-07-30 15:36:35 +02:00
Bruce Richardson
473c88f9b3 drivers/raw: remove rawdev from directory names
The ifpga and skeleton rawdev drivers included "rawdev" in their directory
names, which was superfluous given that they were in the drivers/raw
directory. Shorten the names via this patch.

For meson builds, this will rename the final library .so/.a files
produced, but those will be renamed again later via a patch to
standardize rawdev names.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2019-07-30 15:20:41 +02:00
Anatoly Burakov
79a0bbe5b6 eal: pick IOVA as PA if IOMMU is not available
When IOMMU is not available, /sys/kernel/iommu_groups will not be
populated. This is happening since at least 3.6 when VFIO support
was added. If the directory is empty, EAL should not pick IOVA as
VA as the default IOVA mode.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Tested-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Tested-by: Jerin Jacob <jerinj@marvell.com>
Reviewed-by: Jerin Jacob <jerinj@marvell.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
2019-07-30 10:09:13 +02:00
Xiaolong Ye
54ad947eda doc: add SPDX tag for OPDL guide
Signed-off-by: Xiaolong Ye <xiaolong.ye@intel.com>
2019-07-29 22:59:37 +02:00
Jerin Jacob
12e10bd068 doc: replace license text with SPDX tag
Replace mvasm and mvpp2 Marvell PMD driver
documentation license text with SPDX tag.

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Liron Himi <lironh@marvell.com>
2019-07-29 22:57:28 +02:00
Matan Azrad
2579543f60 net/mlx5: handle LRO packets in regular Rx queue
When LRO offload is configured in Rx queue, the HW may coalesce TCP
packets from same TCP connection into single packet.

In this case the SW should fix the relevant packet headers because
the HW doesn't update them according to the new created packet
characteristics but provides the update values in the CQE.

Add update header code to the regular Rx burst function to support LRO
feature.

Make sure the first mbuf has enough space to include each TCP header,
otherwise the header update may cross mbufs what complicates the
operation too match.

Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
2019-07-29 16:54:27 +02:00
Matan Azrad
be39124e5b net/mlx5: support mbuf headroom for LRO packet
Patch [1] zeroes the mbuf headroom when the port is configured with LRO
because when working with more than one stride per packet the HW cannot
guaranty an headroom in the start stride of each packet.

Change the solution to support mbuf headroom by adding an empty buffer
as the first packet segment, scatter mode must be enabled to support it.

[1] http://patches.dpdk.org/patch/56912/

Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
2019-07-29 16:54:27 +02:00
Andrew Rybchenko
81cc062897 doc: replace sfc license text with SPDX tag
Fix license from BSD-2-Clause to BSD-3-Clause since the file was
lost on the driver license change.

Bump copyright year.

Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2019-07-29 15:47:08 +02:00
Kiran Kumar K
e0e5d23b3c net/octeontx2: support GRE key parsing
Adding support to parse GRE KEY for octeontx2 Flow.
Matching on GRE Key will only work, if checksum and routing
bits in the GRE header are equal to 0.

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
2019-07-29 12:24:49 +02:00
Bernard Iremonger
76ac713150 doc: update release notes for IPsec
Update release notes for recently supported features in IPsec library and
IPsec Security Gateway application.

Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
2019-07-26 15:43:42 +02:00
Matan Azrad
a496e09317 net/mlx5: zero LRO mbuf headroom
LRO packet may consume all the stride memory, hence the PMD cannot
guaranty head-room for the LRO mbuf.

The issue is lack in HW support to write the packet in offset from the
stride start.

A new striding RQ feature may be added in CX6 DX to allow head-room and
tail-room for the LRO strides.

Signed-off-by: Matan Azrad <matan@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
2019-07-23 14:31:36 +02:00
Dekel Peled
175f1c21d0 net/mlx5: check conditions to enable LRO
Use DevX API to read device LRO capabilities.
Check if LRO is supported and can be enabled.
Check if MPRQ is supported and can be used.
Enable MPRQ for LRO use if not enabled by user.
Added note for mlx5_mprq_enabled(), to emphasize that LRO
enables MPRQ.
Disable CQE compression and CRC stripping if LRO is enabled.

Signed-off-by: Dekel Peled <dekelp@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
2019-07-23 14:31:36 +02:00
Dekel Peled
21bb6c7e62 net/mlx5: introduce LRO
Add command-line argument to set LRO session timeout.
Add LRO settings struct in PMD configuration struct.
Add support of LRO offload in port configuration.
Add macros and function to check if LRO is supported and enabled.

Signed-off-by: Dekel Peled <dekelp@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
2019-07-23 14:31:36 +02:00
Viacheslav Ovsiienko
505f1fe426 net/mlx5: add Tx devargs
This patch introduces new mlx5 PMD devarg options:

- txq_inline_min - specifies minimal amount of data to be inlined into
  WQE during Tx operations. NICs may require this minimal data amount
  to operate correctly. The exact value may depend on NIC operation
  mode, requested offloads, etc.

- txq_inline_max - specifies the maximal packet length to be completely
  inlined into WQE Ethernet Segment for ordinary SEND method. If packet
  is larger the specified value, the packet data won't be copied by the
  driver at all, data buffer is addressed with a pointer. If packet
  length is less or equal all packet data will be copied into WQE.

- txq_inline_mpw - specifies the maximal packet length to be completely
  inlined into WQE for Enhanced MPW method.

Driver documentation is also updated.

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
2019-07-23 14:31:36 +02:00
Viacheslav Ovsiienko
a6bd4911ad net/mlx5: remove Tx implementation
This patch removes the existing Tx datapath code
as preparation step before introducing the new
implementation. The following entities are being
removed:

- deprecated devargs support
- tx_burst() routines
- related PRM definitions
- SQ configuration code
- Tx routine selection code
- incompatible Tx completion code

The following devargs are deprecated and ignored:
- "txq_inline" is going to be converted to "txq_inline_max"
  for compatibility issue
- "tx_vec_en"
- "txqs_max_vec"
- "txq_mpw_hdr_dseg_en"
- "txq_max_inline_len" is going to be converted
  to "txq_inline_mpw" for compatibility issue

The deprecated devarg keys are recognized by PMD
and ignored/converted to the new ones in order not
to block device probing.

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Yongseok Koh <yskoh@mellanox.com>
2019-07-23 14:31:36 +02:00
Kiran Kumar K
3aef89aaec net/octeontx2: support IPv6 ext parsing
Adding support for ipv6_ext header parsing in the octeontx2 flow.

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
Acked-by: Jerin Jacob <jerinj@marvell.com>
2019-07-23 14:31:36 +02:00