11960 Commits

Author SHA1 Message Date
Beilei Xing
7469a495ae net/i40e: check multi-driver option parsing
This patch fixes the coverity CHECKED_RETURN issue.

Coverity issue: 261779
Fixes: cfdfca493cae ("net/i40e: fix multiple driver support")
Cc: stable@dpdk.org

Reported-by: John McNamara <john.mcnamara@intel.com>
Signed-off-by: Beilei Xing <beilei.xing@intel.com>
Acked-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
2018-02-08 18:42:14 +01:00
Wei Zhao
d2bc8f4d45 doc: add igb guide
This patch adds user guide specifically for igb NIC, like ixgbe,
to list all the supported features and known issues.

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2018-02-08 18:42:14 +01:00
Olivier Matz
d80016310b net/bnxt: fix packet type
The hw flags are not read correctly: the defines
RX_PKT_CMPL_FLAGS_ITYPE_* are not bits but values, so the should not be
tested with if (value & X) but with if ((value & MASK) == X).
This was resulting in a wrong packet type.

For instance, an IPv4/ICMP packet was returning a value of 7 for
the layer 4, which is undefined.

This patch rework the way packet types are processed, to ensure
that only valid packet types will be advertised.

Fixes: 3d2a6644eb05 ("net/bnxt: support getting ptypes")
Cc: stable@dpdk.org

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
2018-02-08 18:42:14 +01:00
Ajit Khaparde
a6411929a5 net/bnxt: fix return code in MAC address set
There is no need to return an error if an existing MAC is added.

Fixes: 778b759ba10e ("net/bnxt: add MAC address")
Cc: stable@dpdk.org

Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
2018-02-08 18:42:14 +01:00
Ajit Khaparde
a1f3f2937d net/bnxt: add 100G speed config capability
We are not parsing for 100G speed correctly.
With this patch we should be able to configure 100G link.

Fixes: 90ed2b72291a ("net/bnxt: add 100G speed detection")
Cc: stable@dpdk.org

Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
2018-02-08 18:42:14 +01:00
Ajit Khaparde
90cc14d773 net/bnxt: fix link speed setting with autoneg off
When Autoneg is turned off especially on remote side,
link does not come up. This patch fixes that.

Fixes: 7bc8e9a227cc ("net/bnxt: support async link notification")
Cc: stable@dpdk.org

Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
2018-02-08 18:42:14 +01:00
Ajit Khaparde
a0f5e47267 doc: update bnxt feature list
Updating bnxt.ini file.

Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
2018-02-08 14:13:18 +01:00
Olivier Matz
0fc49cbb2c net/bnxt: fix Rx checksum flags
Fix the Rx offload flags when the IP or L4 checksum is seen as incorrect
by the hardware. In this case, the proper value is PKT_RX_IP_CKSUM_BAD.

PKT_RX_IP_CKSUM_NONE means that the checksum may be incorrect in the
packet headers, but the integrity of the IP header is verified. This is
mostly useful for virtual drivers.

Fixes: 7ec39d8c524b ("net/bnxt: update status of Rx IP/L4 CKSUM")
Cc: stable@dpdk.org

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
2018-02-08 13:31:41 +01:00
Moti Haimovsky
cb7e68da63 net/tap: fix cleanup on allocation failure
This patch complements the partial cleanup done inside
eth_dev_tap_create when the routine failed.
Such a failure left a non-functional device attached to the system.

Fixes: 050fe6e9ff97 ("drivers/net: use ethdev allocation helper for vdev")
Cc: stable@dpdk.org

Signed-off-by: Moti Haimovsky <motih@mellanox.com>
Acked-by: Pascal Mazon <pascal.mazon@6wind.com>
2018-02-08 13:18:07 +01:00
Xiaoyun Li
cb16c6acd5 net/ixgbe: fix CRC stripping capability
testpmd needs to get CRC strip offload from rx_offload_capa with a
recent change. This patch adds CRC strip flag to rx_offload_capa
for ixgbe and ixgbevf, as they have the capability.

Fixes: 8b9bd0efe0b6 ("app/testpmd: disable Rx VLAN offloads by default")

Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
2018-02-08 13:14:30 +01:00
Yanglong Wu
5712e64070 net/i40e: revert enhancing loopback AQ command
This reverts commit 7b7711bea5f4 ("net/i40e/base: enhance loopback
AQ command").

It was to support multiple type of loopbacks, which results to
configuration error about adminq. So revert it as agreed.

Fixes: 7b7711bea5f4 ("net/i40e/base: enhance loopback AQ command")

Signed-off-by: Yanglong Wu <yanglong.wu@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
2018-02-08 13:14:25 +01:00
Beilei Xing
68d35933a9 doc: add multi-driver option in i40e guide
This patch updates the i40e guide with new device parameter of
'support-multi-driver'.

Signed-off-by: Beilei Xing <beilei.xing@intel.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2018-02-08 12:39:58 +01:00
Thomas Monjalon
af54b343c8 version: 18.02-rc3
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
v18.02-rc3
2018-02-06 23:41:40 +01:00
Ferruh Yigit
5be776dfa9 doc: convert Intel sharing license header to SPDX tag
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2018-02-06 23:36:35 +01:00
Ferruh Yigit
5630257fcc doc: convert Intel license headers to SPDX tags
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2018-02-06 23:27:08 +01:00
Neil Horman
7317af97f9 compat: relicense some files
Received a note the other day from the Linux Foundation governance board
for DPDK indicating that several files I have copyright on need to be
relicensed to be compliant with the DPDK licensing guidelines.  I have
some concerns with some parts of the request, but am not opposed to
other parts.  So, for those pieces that we are in consensus on, I'm
proposing that we change their license from BSD 2 clause to 3 clause.
I'm also updating the files to use the SPDX licensing scheme

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-02-06 23:13:47 +01:00
Anatoly Burakov
0572343172 doc: remove UTF-8 BOM from membership guide
Fixes: 55694b2a9f64 ("doc: add membership documentation")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2018-02-06 22:29:26 +01:00
David Hunt
d9e71f5227 doc: add hyperthreading note to power library guide
Signed-off-by: David Hunt <david.hunt@intel.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
2018-02-06 22:29:26 +01:00
Marko Kovacevic
2b6e7e3e66 doc: update definition of lcore id and index
Added examples in lcore index for better explanation on
various examples, Sited examples for lcore id.

Signed-off-by: Marko Kovacevic <marko.kovacevic@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2018-02-06 22:29:26 +01:00
Vipin Varghese
c149818b0e doc: add note on multiple crypto vdevs
Add information to explain applications using multiple instances of sw
crypto with example.

Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2018-02-06 22:29:26 +01:00
Vipin Varghese
10b9d471a6 doc: update minimum requirement of l2fwd-crypto
Added note section to update information for use cases working with
multiple crypto devices.

Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2018-02-06 22:29:26 +01:00
Pablo de Lara
0625a29f42 examples/ptpclient: fix Tx configuration
The PTP Client application requires IEEE1588 to be supported
by the network driver used, which needs full Tx data path
to be used.

Fixes: b960219b0d83 ("examples/ptpclient: convert to new ethdev offloads API")

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2018-02-06 22:09:17 +01:00
Nikhil Rao
2af3bd0ee3 eventdev: check error in default Rx conf callback
The default adapter configuration callback is invoked when a Rx
queue is added to the adapter and the adapter detects that a SW
service is needed. The adapter needs to re-configure the device
with an additional port and to do do, it needs to stop the
device and restart it after it is done reconfiguring it. This
patch adds code to check the return code of
rte_event_dev_start() for both when the reconfiguration fails
and when it succeeds and introduces a new error code (-EIO)
for the first case.

Coverity issue: 257000
Fixes: 9c38b704d280 ("eventdev: add eth Rx adapter implementation")
Cc: stable@dpdk.org

Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2018-02-06 22:09:17 +01:00
Sebastian Basierski
f76ef45332 net/virtio-user: check error on clearing non block flag
Report error message if clearing O_NONBLOCK flag will fail,
then return from function.

Coverity issue: 143439
Fixes: ef53b6030039 ("net/virtio-user: support LSC")
Cc: stable@dpdk.org

Signed-off-by: Sebastian Basierski <sebastianx.basierski@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
2018-02-06 22:09:17 +01:00
Beilei Xing
378cc7f569 net/i40e: fix Rx interrupt
This patch fixes interval error and corrects macros when
enabling Rx interrupt mode. The patch also fixes a logical
error during supporting multiple drivers.

Fixes: cfdfca493cae ("net/i40e: fix multiple driver support")
Cc: stable@dpdk.org

Signed-off-by: Beilei Xing <beilei.xing@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
2018-02-06 19:08:13 +01:00
Kirill Rybalchenko
b1ec717bff net/i40e: fix multiple DDP packages conflict
Should be not possible to load conflicting DDP profiles. Only DDP
profiles of the same group (not 0) can be loaded together. If DDP
profile group is 0, it is exclusive, i.e. it cannot be loaded with
any other DDP profile. If DDP profile groups are different, these
profiles cannot be loaded together.

Fixes: b319712f53c8 ("net/i40e: extended list of operations for DDP processing")
Cc: stable@dpdk.org

Signed-off-by: Kirill Rybalchenko <kirill.rybalchenko@intel.com>
Acked-by: Andrey Chilikin <andrey.chilikin@intel.com>
Acked-by: Beilei Xing <beilei.xing@intel.com>
2018-02-06 19:08:13 +01:00
Yanglong Wu
d5354e89e5 app/testpmd: fix port DCB configuration
The port_conf for the DCB configuration should
inherit the same configuration of the port.

Fixes: 0074d02fca21 ("app/testpmd: convert to new Rx offloads API")

Signed-off-by: Yanglong Wu <yanglong.wu@intel.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2018-02-06 19:08:13 +01:00
Anatoly Burakov
863fc5beca test/timer_perf: fix memory leak
Fixes: 277afaf3dbcb ("app/test: add timer_perf")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
2018-02-06 19:45:29 +01:00
Anatoly Burakov
c1d30e443b test/table: fix memory leak
Always deallocate allocated resources after the test is done.

Fixes: 5205954791cb ("app/test: packet framework unit tests")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
2018-02-06 19:45:29 +01:00
Anatoly Burakov
cac64abd25 test/ring_perf: fix memory leak
Fixes: ac3fb3019c52 ("app: rework ring tests")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
2018-02-06 19:45:29 +01:00
Anatoly Burakov
14ec04e1ae test/ring: fix memory leak
Get rid of global static ring variable and don't reuse rings
between test runs.

Acked-by: Olivier Matz <olivier.matz@6wind.com>

Fixes: 4e32101f9b01 ("ring: support freeing")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
2018-02-06 19:45:29 +01:00
Anatoly Burakov
8d0e39debc test/reorder: fix memory leak
Add a teardown function that frees allocated resources.

Fixes: d0c9b58d7156 ("app/test: new reorder unit test")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
2018-02-06 19:45:29 +01:00
Anatoly Burakov
24d376bfee test/bitmap: fix memory leak
Fixes: c7e4a134e769 ("test: verify bitmap operations")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
2018-02-06 19:45:29 +01:00
Bao-Long Tran
07b7b0b5a9 examples/ip_pipeline: fix timer period unit
The timer_period option specified by users via config file
should have unit of 1 millisecond. However timer_period is
internally converted to unit of 10 millisecond.

Fixes: 4e14069328fc ("examples/ip_pipeline: measure CPU utilization")
Cc: stable@dpdk.org

Signed-off-by: Bao-Long Tran <longtb5@viettel.com.vn>
Reviewed-by: Jasvinder Singh <jasvinder.singh@intel.com>
2018-02-06 19:45:29 +01:00
Vipin Varghese
6726521997 examples/l2fwd: check if user portmask is valid
User can pass portmask with any value, even invalid mask. The code
checks against actual portmask.

Signed-off-by: Vipin Varghese <vipin.varghese@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2018-02-06 18:52:52 +01:00
Amr Mokhtar
dd21615819 bbdev: fix exported dynamic log type
This patch fixes shared library compilation due to undefined
reference to an exported variable 'bbdev_logtype'.

Fixes: 4935e1e9f76e ("bbdev: introduce wireless base band device lib")
Fixes: b8cfe2c9aed2 ("bb/turbo_sw: add software turbo driver")
Fixes: 7dc2b1589440 ("bb/null: add null base band device driver")

Signed-off-by: Amr Mokhtar <amr.mokhtar@intel.com>
2018-02-06 18:51:44 +01:00
Bruce Richardson
cc5fc11017 ethdev: fix stats query for lowest xstat id
When querying either the name or the value of a stat using the xstats
APIs, a check is done to see if the regular stats API or the xstats APIs
for the driver need to be used. However, the id of the stat requested is
checked to see if it is greater than the number of basic stats, rather
than checking for greater-or-equal, meaning that the xstat with the lowest
id gets incorrectly treated as a basic stat.

This problem manifests itself when you call proc_info using "--xstats-id"
for the first xstat, you get no name of the stat printed, and a random(ish)
stat value.

Fixes: 4773152f850b ("ethdev: optimize xstats by ids APIs")

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>
2018-02-06 18:47:01 +01:00
Pavan Nikhilesh
d415e4d18c bus/dpaa: fix default IOVA mode
Fix dpaa bus returning IOVA as PA even when it is not running on dpaa
platform.

Fixes: 1ee9569576f6 ("config: enable dpaaX drivers for generic ARMv8")
Fixes: d5a4e3a00c4a ("bus/dpaa: set IOVA mode as physical")
Cc: stable@dpdk.org

Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-02-06 18:38:33 +01:00
Jerin Jacob
877fe37c03 bus/fslmc: fix build with latest glibc
Fix the following build error with latest glibc-headers(
Part of aarch64-linux-gnu-gcc-7.3.0 toolchain)

In file included from drivers/bus/fslmc/mc/fsl_mc_sys.h:30:0,
                 from drivers/bus/fslmc/mc/dpmng.c:7:
/usr/aarch64-linux-gnu/usr/include/libio.h:21:2: error:
  #warning "<libio.h> is deprecated; use <stdio.h> instead." [-Werror=cpp]

Fixes: 3af733ba8da8 ("bus/fslmc: introduce MC object functions")
Cc: stable@dpdk.org

Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2018-02-06 18:29:37 +01:00
Matan Azrad
41fc015197 app/testpmd: rework simple forward config
A new function was added to get a Tx port index as a function of the
topology mode and the Rx port index.

Use this function to get the Tx port index of simple stream.

Signed-off-by: Matan Azrad <matan@mellanox.com>
2018-02-06 18:05:08 +01:00
Matan Azrad
4deefb6f71 app/testpmd: fix port topology in RSS forward config
The testpmd user can configure port topology mode to define the port
topology between the testpmd forward ports(paired, chained and loop).

When multi-queue ports are configured by the user, the testpmd
streams are created by rss_fwd_config_setup() function, this function
doesn't take into account the chained topology mode and configures the
forward streams with paired topology mode in this case.

Configure the stream Tx port by dedicated function which calculates
a valid Tx port index as a function of the topology mode and the Rx
port index.

Fixes: af75078 ("first public release")
Cc: stable@dpdk.org

Signed-off-by: Matan Azrad <matan@mellanox.com>
2018-02-06 18:05:01 +01:00
Matan Azrad
13cb6fae79 app/testpmd: fix port index in RSS forward config
When multi-queue ports are configured by the user, the testpmd streams
are created by rss_fwd_config_setup() function.

This function may configure to the streams either invalid Rx ports or
invalid Tx ports.

An invalid Tx port is configured when the number of ports is odd.
In this case, the last Tx port will be always invalid.

An invalid Rx port is configured when NUMA support is configured by the
user and the number of forward ports is much smaller than the number of
all ports. In this case, also the Tx port is invalid.

Change calculations to get valid ports.

Fixes: af75078 ("first public release")
Cc: stable@dpdk.org

Signed-off-by: Matan Azrad <matan@mellanox.com>
2018-02-06 18:04:51 +01:00
Shreyansh Jain
4ce5b14ac9 doc: fix release note for rawdev library
'+' sign was missing from librawdev library which is added
in this release.

Fixes: a9bb0c44c775 ("doc: add rawdev library guide and doxygen page")

Signed-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
2018-02-06 17:35:53 +01:00
Shreyansh Jain
a76ec6fe90 raw/skeleton: fix device start test
Device can only be started if firmware is loaded, as per Skeleton
rawdev driver semantics. This patch fixes original implementation
which attempted to start the device without loading firmware.

Fixes: 55ca1b0f2151 ("raw/skeleton: add test cases")
Cc: shreyansh.jain@nxp.com

Signed-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>
2018-02-06 17:32:34 +01:00
Herbert Guan
c6e536e384 build: add more implementers IDs and PNs for ARM
1) Add native PN option '-march=native' to allow automatic detection.
   Set 'arm_force_native_march' to 'true' in config/arm/meson.build
   to use native PN option.
2) Add implementer_pn option for part num selection in cross compile
3) Add known Arm cortex PN support
4) Add known implementers' IDs (use generic flags/archs by default)
5) Sync build options with config/common_armv8a_linuxapp

Signed-off-by: Herbert Guan <herbert.guan@arm.com>
Acked-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
2018-02-06 14:44:31 +01:00
Wei Zhao
cd148a3c80 doc: update flow filtering example guide
This patch updates the user guidance of example application of
flow_filtering, with more details of Tx queues configuration.

Signed-off-by: Wei Zhao <wei.zhao1@intel.com>
Reviewed-by: Ori Kam <orika@mellanox.com>
2018-02-06 15:10:51 +01:00
Nélio Laranjeiro
fbab400f61 net/mlx5: fix UAR remapping on non configured queues
priv_tx_uar_remap() is wrongly considering the queue is already configured
and thus present in the queue array of the device.

Fixes: f8b9a3bad467 ("net/mlx5: install a socket to exchange a file descriptor")
Cc: stable@dpdk.org

Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
2018-02-06 14:35:07 +01:00
Nélio Laranjeiro
1f30a22358 net/mlx5: fix flow RSS configuration
An RSS configuration without a key is valid according to the
rte_eth_rss_conf API definition.

Fixes: 8086cf08b2f0 ("net/mlx5: handle RSS hash configuration in RSS flow")
Cc: stable@dpdk.org

Reported-by: Yuanhan Liu <yliu@fridaylinux.org>
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
2018-02-06 14:35:07 +01:00
Adrien Mazarguil
f6242d0655 net/mlx: make rdma-core glue path configurable
Since rdma-core glue libraries are intrinsically tied to their respective
PMDs and used as internal plug-ins, their presence in the default search
path among other system libraries for the dynamic linker is not necessarily
desired.

This commit enables their installation and subsequent look-up at run time
in RTE_EAL_PMD_PATH if configured to a nonempty string. This path can also
be overridden by environment variables MLX[45]_GLUE_PATH.

Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2018-02-06 14:35:07 +01:00
Adrien Mazarguil
6d5df2eaf6 net/mlx: version rdma-core glue libraries
When built as separate objects, these libraries do not have unique names.
Since they do not maintain a stable ABI, loading an incompatible library
may result in a crash (e.g. in case multiple versions are installed).

This patch addresses the above by versioning glue libraries, both on the
file system (version suffix) and by comparing a dedicated version field
member in glue structures.

Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
2018-02-06 14:35:07 +01:00