Commit Graph

11976 Commits

Author SHA1 Message Date
Hemant Agrawal
acaa9ee991 move kernel modules directories
This patch moves the kernel modules code from EAL to a common place.
 - Separate the kernel module code from user space code.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Tested-by: Bruce Richardson <bruce.richardson@intel.com>
2018-03-21 23:04:21 +01:00
Thomas Monjalon
48595b8d55 doc: adapt features tables header height
The length of the longest header name is used to adjust the padding
of the header row automatically, instead of fixed length.
The previous length (10) was too short for vdev_netvsc.

Fixes: 6086ab3bb3 ("net/vdev_netvsc: introduce Hyper-V platform driver")
Cc: stable@dpdk.org

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2018-03-21 23:04:21 +01:00
Thomas Monjalon
18b884e9a9 doc: reduce features tables column width
The font size of the header row is reduced in order to shrink
the column size of the tables.
It is required for the NICs features table which is too large to fit
in the page width.

Cc: stable@dpdk.org

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2018-03-21 23:04:21 +01:00
Mark Kavanagh
3cbf404294 maintainers: resign from GSO lib
I will not be directly working on the DPDK project anymore.

Signed-off-by: Mark Kavanagh <mark.b.kavanagh@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Jiayu Hu <jiayu.hu@intel.com>
2018-03-21 22:59:11 +01:00
Yuanhan Liu
fd38cf0102 maintainers: resign from vhost/virtio
Signed-off-by: Yuanhan Liu <yliu@fridaylinux.org>
2018-03-21 22:59:11 +01:00
Jianfeng Tan
93907c22ec maintainers: update for vhost lib and PMD
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Acked-by: Zhiyong Yang <zhiyong.yang@intel.com>
Acked-by: Yuanhan Liu <yliu@fridaylinux.org>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
2018-03-21 22:59:11 +01:00
Thomas Monjalon
1ef7e18191 drivers: rename bbdev directory to baseband
The drivers directory contains some sub-directories
for each kind of device (or bus, mem):
	net, crypto, event, raw
They are not suffixed with "dev" because it is obvious.

For consistency, the sub-directory drivers/bbdev/
is renamed to drivers/baseband/.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
2018-03-21 22:43:05 +01:00
Anatoly Burakov
4fc90035af vfio: fix headers for C++ support
Fixes: 279b581c89 ("vfio: expose functions")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
2018-03-21 18:49:37 +01:00
Anatoly Burakov
579a4ccc34 eal: ignore IPC messages until init is complete
If we receive messages that don't have a callback registered for
them, and we haven't finished initialization yet, it can be reasonably
inferred that we shouldn't have gotten the message in the first
place. Therefore, send requester a special message telling them to
ignore response to this request, as if this process wasn't there.

Since it is not possible for primary process to receive any messages
during initialization, this change in practice only applies to
secondary processes.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 18:42:39 +01:00
Anatoly Burakov
37e945d187 eal: simplify IPC sync request timeout
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 18:42:39 +01:00
Anatoly Burakov
89f1fe7e6d eal: lock IPC directory on init and send
When sending IPC messages, prevent new sockets from initializing.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 18:42:39 +01:00
Anatoly Burakov
a8075ad61e eal: do not hardcode socket filter value in IPC
Currently, filter value is hardcoded and disconnected from actual
value returned by eal_mp_socket_path(). Fix this to generate filter
value by deriving it from eal_mp_socket_path() instead.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 18:42:39 +01:00
Anatoly Burakov
2e30c3fac4 eal: abstract away IPC socket path generation
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 18:42:39 +01:00
Anatoly Burakov
a99c96e96a eal: add internal flag of init completed
Currently, primary process initialization is finalized by setting
the RTE_MAGIC value in the shared config. However, it is not
possible to check whether secondary process initialization has
completed. Add such a value to internal config.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
2018-03-21 18:42:34 +01:00
Anatoly Burakov
da5957821b eal: fix race condition in IPC request
Unlocking the action list before sending message and locking it
again afterwards introduces a window where a response might
arrive before we have a chance to start waiting on a condition,
resulting in timeouts on valid messages.

Fixes: 783b6e5497 ("eal: add synchronous multi-process communication")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 09:50:31 +01:00
Anatoly Burakov
139653a09a eal: fix errno handling in IPC
Fixes: bacaa27540 ("eal: add channel for multi-process communication")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 09:50:29 +01:00
Anatoly Burakov
836c2ed0c0 eal: fix IPC request socket path
Fixes: 783b6e5497 ("eal: add synchronous multi-process communication")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 09:50:27 +01:00
Anatoly Burakov
bed4c1dfa9 eal: fix IPC socket path
Fixes: bacaa27540 ("eal: add channel for multi-process communication")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 09:50:25 +01:00
Anatoly Burakov
620952e060 eal: fix IPC timeout
Fixes: 783b6e5497 ("eal: add synchronous multi-process communication")
Cc: stable@dpdk.org

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Jianfeng Tan <jianfeng.tan@intel.com>
2018-03-21 09:50:23 +01:00
Hemant Agrawal
0011df0af2 build: add meson cross-compilation config for dpaaX
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 18:01:01 +01:00
Hemant Agrawal
6ec78c2463 build: add meson support for dpaaX platforms
Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:50:02 +01:00
Hemant Agrawal
3d7ca4e1b0 config: add dpaaX build for all Linux platforms
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:44:16 +01:00
Hemant Agrawal
be2a362a82 bus/fslmc: enable compilation for other platforms
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:43:36 +01:00
Hemant Agrawal
c243ede4d8 bus/dpaa: enable compilation for other platforms
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:42:54 +01:00
Hemant Agrawal
171c8504bf bus/fslmc: add 32-bit functional support for ARM
This patch adds the functional logic to make the dpaa2 drivers
work on 32bit machine.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:42:15 +01:00
Hemant Agrawal
5ae1edff68 dpaa2: prepare for 32-bit build
This patch prepare the dpaa2 drivers for compilation on 32 bit machine.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:41:35 +01:00
Hemant Agrawal
0e5607e4ad dpaa: prepare for 32-bit build
This patch prepares the dpaa drivers for compilation on 32 bit machine.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:40:54 +01:00
Hemant Agrawal
aecb435131 bus/dpaa: fix big endian build
The array pointers were used without index.

Fixes: b9083ea5e0 ("net/dpaa: further push mode optimizations")
Cc: stable@dpdk.org

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com>
2018-03-15 17:40:13 +01:00
Hemant Agrawal
89cf958482 event/dpaa: fix header include
rte_cycles.h shall be included instead of rte_cycles_64.h

dpaa_eventdev.c:32:27:
fatal error: rte_cycles_64.h: No such file or directory

Fixes: 9caac5dd1e ("event/dpaa: introduce PMD")
Cc: stable@dpdk.org

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-15 17:39:33 +01:00
Bruce Richardson
6930c0403a net/pcap: simplify dependency checking using meson
Rather than trying to use meson's build-in detection for libpcap, and
having to special-case cross-building, just check for the presence of
pcap.h and the pcap library.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Tested-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-12 16:29:27 +01:00
Bruce Richardson
749799482a net/virtio: add to meson build
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Maxime Coquelin <maxime.coquelin@redhat.com>
2018-03-12 16:29:27 +01:00
Bruce Richardson
996ef11761 app: add all remaining apps to meson build
Add remaining subdirectories in the app folder to the meson build.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
2018-03-12 16:29:27 +01:00
Bruce Richardson
1a0accaddb app/procinfo: rename folder to remove underscore
All other apps in the app folder use "-" rather than "_" to separate words
in the app name, so rename proc_info to be consistent.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
2018-03-12 16:29:27 +01:00
Bruce Richardson
fa036e70d7 app: generalize meson build
Since most apps are built in largely the same way, generalize the logic
into a foreach loop in app/meson.build file.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
2018-03-12 16:29:27 +01:00
Hemant Agrawal
09e1e8d256 mk: fix dependencies of dpaaX drivers
This  patch fixes the build dependency of various
dpaaX components, when the dpaa or fslmc bus is disabled,
or VFIO is disabled.

Fixes: 1ee9569576 ("config: enable dpaaX drivers for generic ARMv8")
Cc: stable@dpdk.org

Reported-by: Yongseok Koh <yskoh@mellanox.com>
Suggested-by: Thomas Monjalon <thomas@monjalon.net>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-14 00:37:42 +01:00
Hemant Agrawal
3fcdd12546 app/testpmd: fix DPAA shared library dependency
The dynamic link is broken for ARM platform because the dependencies
of the DPAA PMD are not declared.

Fixes: 83c82e15e1 ("app/testpmd: support loopback config for DPAA")
Cc: stable@dpdk.org

Reported-by: Marco Varlese <mvarlese@suse.de>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-03-14 00:25:37 +01:00
Gowrishankar Muthukrishnan
da07658d58 eal/ppc: remove braces in SMP memory barrier macro
This patch fixes the compilation problem with rte_smp_mb,
when there is else clause following it, as in test_barrier.c.

Fixes: 05c3fd7110 ("eal/ppc: atomic operations for IBM Power")
Cc: stable@dpdk.org

Signed-off-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
Acked-by: Luca Boccassi <bluca@debian.org>
Acked-by: Chao Zhu <chaozhu@linux.vnet.ibm.com>
2018-03-14 00:06:19 +01:00
Bruce Richardson
befc693a61 examples: fix build with meson
The ip_pipeline and qos_meter example apps now use experimental APIs so
this fact needs to be flagged in their meson.build files.

Fixes: c06ddf9698 ("meter: add configuration profile")

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
2018-03-13 23:57:33 +01:00
Cristian Dumitrescu
c06ddf9698 meter: add configuration profile
This patch adds support for meter configuration profiles.
Benefits: simplified configuration procedure, improved performance.

Q1: What is the configuration profile and why does it make sense?
A1: The configuration profile represents the set of configuration
    parameters for a given meter object, such as the rates and sizes for
    the token buckets. The configuration profile concept makes sense when
    many meter objects share the same configuration, which is the typical
    usage model: thousands of traffic flows are each individually metered
    according to just a few service levels (i.e. profiles).

Q2: How is the configuration profile improving the performance?
A2: The performance improvement is achieved by reducing the memory
    footprint of a meter object, which results in better cache utilization
    for the typical case when large arrays of meter objects are used. The
    internal data structures stored for each meter object contain:
       a) Constant fields: Low level translation of the configuration
          parameters that does not change post-configuration. This is
          really duplicated for all meters that use the same
          configuration. This is the configuration profile data that is
          moved away from the meter object. Current size (implementation
          dependent): srTCM = 32 bytes, trTCM = 32 bytes.
       b) Variable fields: Time stamps and running counters that change
          during the on-going traffic metering process. Current size
          (implementation dependent): srTCM = 24 bytes, trTCM = 32 bytes.
          Therefore, by moving the constant fields to a separate profile
          data structure shared by all the meters with the same
          configuration, the size of the meter object is reduced by ~50%.

Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
2018-02-19 22:28:05 +01:00
Thomas Monjalon
3d8d90206c version: 18.05-rc0
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2018-02-19 21:54:26 +01:00
John McNamara
8249acf424 doc: add template release notes for 18.05
Add template release notes for DPDK 18.05 with inline
comments and explanations of the various sections.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
2018-02-19 21:54:14 +01:00
Thomas Monjalon
92924b207b version: 18.02.0
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
2018-02-14 19:11:02 +01:00
John McNamara
acf5c976bb doc: update release notes for 18.02
Fix grammar, spelling and formatting of DPDK 18.02 release notes.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
2018-02-14 19:01:26 +01:00
Xiao Wang
7f012f707f doc: add virtio guest announce support to release notes
Signed-off-by: Xiao Wang <xiao.w.wang@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2018-02-14 18:58:47 +01:00
Raslan Darawsheh
d0d7ad6119 doc: add tested platforms with Mellanox NICs
Signed-off-by: Raslan Darawsheh <rasland@mellanox.com>
2018-02-14 18:52:31 +01:00
Pablo de Lara
d429cc0b53 doc: fix outdated link to IPsec white paper
Fixes: 924e84f873 ("aesni_mb: add driver for multi buffer based crypto")
Cc: stable@dpdk.org

Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
2018-02-14 18:43:12 +01:00
Harry van Haaren
e4f113761d doc: remove reference to old distro in Linux guide
Remove reference to Fedora 18 which is EOL-ed, reword
surrounding sentences to read correctly.

Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
2018-02-14 18:35:18 +01:00
Ferruh Yigit
1d81d4f2a6 doc: announce ethdev API fix for port id size
Fix rte_eth_dev_get_sec_ctx() parameter port_id storage size,
from uint8_t to uint16_t.

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Radu Nicolau <radu.nicolau@intel.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2018-02-14 18:31:14 +01:00
Kirill Rybalchenko
bdc9bb9b62 doc: announce ethdev ABI change for filter structs
Signed-off-by: Kirill Rybalchenko <kirill.rybalchenko@intel.com>
Acked-by: Marko Kovacevic <marko.kovacevic@intel.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Olivier Matz <olivier.matz@6wind.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
2018-02-14 18:30:22 +01:00
Ferruh Yigit
768ac8d452 doc: announce ethdev API changes for callbacks
Ethdev APIs to add callback return the callback object as "void *",
update return type to actual object type
"struct rte_eth_rxtx_callback *"

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
2018-02-14 18:29:04 +01:00