path: root/devtools
AgeCommit message (Collapse)Author
2018-10-27telemetry: add client feature and socketsCiara Power
This patch introduces clients to the telemetry API. When a client makes a connection through the initial telemetry socket, they can send a message through the socket to be parsed. Register messages are expected through this socket, to enable clients to register and have a client socket setup for future communications. A TAILQ is used to store all clients information. Using this, the client sockets are polled for messages, which will later be parsed and dealt with accordingly. Functionality that make use of the client sockets were introduced in this patch also, such as writing to client sockets, and sending error responses. Signed-off-by: Ciara Power <> Signed-off-by: Brian Archbold <> Signed-off-by: Kevin Laatz <> Acked-by: Harry van Haaren <>
2018-10-25devtools: add git log checks for PHYFerruh Yigit
Signed-off-by: Ferruh Yigit <>
2018-10-25devtools: add git check exception for OCTEON TXAnoob Joseph
The 'TX' in OCTEON TX would cause a warning. Adding an exception for that. OCTEON TX is a registered product under Cavium Signed-off-by: Anoob Joseph <>
2018-10-25devtools: fix alignment of Marvell build optionsThomas Monjalon
Really minor issue: There were extra spaces making the alignment wrong. Fixes: e95faac15110 ("crypto/mrvl: rename PMD to mvsam") Fixes: 4ccc8d770d3b ("net/mvneta: add PMD skeleton") Signed-off-by: Thomas Monjalon <> Acked-by: Ferruh Yigit <>
2018-10-11net/mvneta: add PMD skeletonZyta Szpak
Add neta pmd driver skeleton providing base for the further development. Signed-off-by: Natalie Samsonov <> Signed-off-by: Yelena Krivosheev <> Signed-off-by: Dmitri Epshtein <> Signed-off-by: Zyta Szpak <> Signed-off-by: Andrzej Ostruszka <> Reviewed-by: Ferruh Yigit <>
2018-10-01devtools: use a common prefix for temporary filesThomas Monjalon
Some temporary files were generated in /tmp, others in the current directory, and none was "dpdk prefixed". All these files have a common path prefix now: $TMPDIR/dpdk. TMPDIR is /tmp by default. Note: the previous use of mktemp, with a template but without -t, was generating a file in the current directory. Signed-off-by: Thomas Monjalon <> Acked-by: Bruce Richardson <>
2018-10-01devtools: fix printing subject of checked patchThomas Monjalon
If is not run with verbose option (-v), the patch subject is printed as headline of errors only if there is an error reported by, not with other checks. The headline is moved to a function which is called after each check if there is an error and if it has not already be printed. One more addition, in verbose mode, is now announced as done for other checks. Signed-off-by: Thomas Monjalon <> Acked-by: Neil Horman <>
2018-10-01devtools: move awk script ckecking forbidden tokensArnon Warshavsky
The awk code previously read inline in was using -d which is a bash option, while bash is not the default shell in all distributions. Now moved to be read from a separate file. Signed-off-by: Arnon Warshavsky <> Acked-by: Andrzej Ostruszka <>
2018-09-18devtools: use shared libs to save space in build testBruce Richardson
For usability, the default build type in meson is static, so that binaries can be run from the build directory easily. However, static builds take more space, so for build-testing purposes default to using shared builds where possible. Signed-off-by: Bruce Richardson <> Acked-by: Luca Boccassi <>
2018-08-21devtools: relax rule for identifying symbol sectionNeil Horman
It was reported recently that some patches that add symbols to an existing EXPERIMENTAL section of a version map file generate errors because the check-symbol-change script was identifying the section as "@@" rather than EXPERIMENTAL. This was fairly clearly due to the fact that the rule identifying the version section expected the whole section to be added, rather than having it already exist, with only new symbols being added to the existing section. This led the match rule to misread the format of that line and pull the wrong word out of it. The fix is to relax the rule slightly. Rather than assume that the section must exist on a line that was added, allow the section name to be set by any line that ends in a '{', which should be correct, given our coding practices. The section name is then extracted as the next to the last word on the line ( $(NF-1) ). Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition") Cc: Reported-by: Nikhil Rao <> Signed-off-by: Neil Horman <> Tested-by: Nikhil Rao <>
2018-08-09devtools: fix symbol check for dashThomas Monjalon
The script was not running when /bin/sh redirects to dash. Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition") Cc: Reported-by: Stephen Hemminger <> Signed-off-by: Thomas Monjalon <> Tested-by: Ferruh Yigit <> Acked-by: Neil Horman <>
2018-08-01devtools: fix checkpatch with dashGavin Hu
When running, it generates the following error on some linux distributions(like Debian) with Dash as the default shell interpreter. trap: SIGINT: bad trap The fix is to replace SIGINT with INT signal, it works for both bash and dash. Fixes: 4bec48184e ("devtools: add checks for ABI symbol addition") Cc: Signed-off-by: Gavin Hu <> Reviewed-by: Honnappa Nagarahalli <> Acked-by: John McNamara <> Tested-by: Vipin Varghese <>
2018-07-31devtools: alert on new calls to exit from libsArnon Warshavsky
This patch adds a new function that is called per every checked patch, and alerts for new instances of rte_panic/rte_exit. The check excludes comments, and alerts in the case of a positive balance between additions and removals. Signed-off-by: Arnon Warshavsky <> Reviewed-by: Stephen Hemminger <> Tested-by: Kevin Traynor <>
2018-07-26devtools: add compressdev tests to build testPablo de Lara
Compressdev tests depend on Zlib library, so they can only be enabled if this is available. Signed-off-by: Pablo de Lara <>
2018-07-26devtools: remove already enabled nfp from build testPablo de Lara
NFP PMD does not have any external dependency. It only requires Linux OS, so it is not needed to be enabled in the test-build script. Fixes: 80987c40fd28 ("config: enable nfp driver on Linux") Signed-off-by: Pablo de Lara <> Acked-by: Alejandro Lucero <>
2018-07-20devtools: fix checkpatch for filename with spaceThomas Monjalon
If the patch filename or the temporary file path have a space in their name, the script does not work. The variables for the filenames must be enclosed in quotes in order to preserve spaces. Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition") Signed-off-by: Thomas Monjalon <> Acked-by: Neil Horman <>
2018-07-20devtools: fix symbol check for filename with spaceThomas Monjalon
If the patch filename or the temporary file path have a space in their name, the script does not work. The variables for the filenames must be enclosed in quotes in order to preserve spaces. Fixes: 4bec48184e33 ("devtools: add checks for ABI symbol addition") Signed-off-by: Thomas Monjalon <> Acked-by: Neil Horman <>
2018-07-16devtools: add checks for ABI symbol additionNeil Horman
Recently, some additional patches were added to allow for programmatic marking of C symbols as experimental. The addition of these markers is dependent on the manual addition of exported symbols to the EXPERIMENTAL section of the corresponding libraries version map file. The consensus on review is that, in addition to mandating the addition of symbols to the EXPERIMENTAL version in the map, we need a mechanism to enforce our documented process of mandating that addition when they are introduced. To that end, I am proposing this change. It is an addition to the checkpatches script, which scan incoming patches for additions and removals of symbols to the map file, and warns the user appropriately. Signed-off-by: Neil Horman <>
2018-07-11devtools: expand meson cross compiling test coverageGavin Hu
The default test script covers only default host cc compiler, either gcc or clang, the fix is to increase the coverage by adding one more to cover clang and the others for gcc. Fixes: a55277a788 ("devtools: add test script for meson builds") Cc: Signed-off-by: Gavin Hu <> Reviewed-by: Phil Yang <> Reviewed-by: Song Zhu <> Acked-by: Bruce Richardson <>
2018-07-11devtools: fix ninja command in build testGavin Hu
On some linux distributions, eg: CentOS, the ninja executable has a different name: ninja-build, this patch is to check and adapt to it accordingly. ./devtools/ line 24: ninja: command not found Fixes: a55277a788 ("devtools: add test script for meson builds") Cc: Signed-off-by: Gavin Hu <> Reviewed-by: Phil Yang <> Reviewed-by: Song Zhu <> Acked-by: Bruce Richardson <>
2018-06-14devtools: fix ARM builds test with mesonBruce Richardson
For cross-builds the CC environmental variable only applies for compiling native binaries i.e. pmdinfogen, so setting it to a cross-build compiler will only cause problems. Leave the value unset in the script to use the platform-default compiler. Fixes: a55277a788df ("devtools: add test script for meson builds") Cc: Signed-off-by: Bruce Richardson <> Acked-by: Thomas Monjalon <>
2018-06-08devtools: ignore SPDX warning of checkpatchStephen Hemminger
Since DPDK developers have decided to use a different tag format than the kernel developers, ignore warnings about SPDX tags. Signed-off-by: Stephen Hemminger <>
2018-05-29devtools: check orphan symbols in map filesThomas Monjalon
The script finds the symbols exported in a map file but not referenced in the codebase. Suggested-by: Pavan Nikhilesh <> Signed-off-by: Thomas Monjalon <>
2018-05-29devtools: add test script for meson buildsBruce Richardson
To simplify testing with the meson and ninja builds, we can add a script to set up and do multiple builds. Currently this script sets up: * clang and gcc builds * builds using static and shared linkage for binaries (libs are always built as both) * a build using the lowest instruction-set level for x86 (-march=nehalem) * cross-builds for each cross-file listed in config/arm Each build is configured in a directory ending in *-build, and then for the build stage, we just call ninja in each directory in turn. [i.e. we assume every directory starting with "build-" is a meson build, which is probably an ok assumption]. Signed-off-by: Bruce Richardson <> Signed-off-by: Thomas Monjalon <>
2018-05-25use SPDX tag for 6WIND copyrighted filesOlivier Matz
Signed-off-by: Olivier Matz <>
2018-05-25use SPDX license tag in Mellanox copyrighted filesThomas Monjalon
Some files were left with full license and wrong copyright format. They are switched to this format: SPDX-License-Identifier: BSD-3-Clause Copyright 2017 Mellanox Technologies, Ltd Fixes: 5feecc57d90b ("align SPDX Mellanox copyrights") Signed-off-by: Thomas Monjalon <> Acked-by: Hemant Agrawal <> Acked-by: Shahaf Shuler <>
2018-05-23devtools: check Linux script path if directoryJuhamatti Kuusisaari
Handle properly a case where the path (DPDK_PATCH_PATH or DPDK_MAINTAINER_PATH) is set to point to a directory. Signed-off-by: Juhamatti Kuusisaari <> Reviewed-by: Ferruh Yigit <>
2018-05-23devtools: add git log checks for more acronymsFerruh Yigit
checks added for vDPA, MSS, UDP, EEPROM Signed-off-by: Ferruh Yigit <>
2018-05-14devtools: provide more generic grep in git checkAndy Green
On Fedora 28, every patch is faulted for "Wrong headline uppercase", because [A-Z] is not always case sensitive. Change to use [[:upper:]] Signed-off-by: Andy Green <> Tested-by: Ferruh Yigit <>
2018-05-10compress/isal: add skeleton ISA-L compression PMDLee Daly
Adding basic skeleton of the ISA-L compression driver. No compression functionality, but lays the foundation for operations in the rest of the patchset. The ISA-L compression driver utilizes Intel's ISA-L compression library and compressdev API. Signed-off-by: Lee Daly <> Reviewed-by: Pablo de Lara <>
2018-05-10crypto/mrvl: rename PMD to mvsamTomasz Duszynski
Picking a company stock ticker for a PMD name might not be a best approach in a long run since name is too generic. This patch addresses that and renames mrvl to mvsam. Signed-off-by: Natalie Samsonov <> Signed-off-by: Tomasz Duszynski <>
2018-04-23crypto/ccp: add AMD ccp skeleton PMDRavi Kumar
Added DPDK crypto PMD for AMD Cryptographic Co-Processors. This patch adds a basic skeleton for PMD. Signed-off-by: Ravi Kumar <>
2018-04-23crypto/aesni_gcm: support IPsec Multi-buffer lib v0.49Marko Kovacevic
Adds support for the v0.49 of the IPsec Multi-buffer lib, which now gets compiled and installed as a shared object. Therefore, there is no need to pass the AESNI_MULTI_BUFFER_LIB_PATH Signed-off-by: Marko Kovacevic <> Acked-by: Pablo de Lara <>
2018-04-23crypto/aesni_mb: support IPsec Multi-buffer lib v0.49Marko Kovacevic
Adds support for the v0.49 of the IPsec Multi-buffer lib, which now gets compiled and installed as a shared object. Therefore, there is no need to pass the AESNI_MULTI_BUFFER_LIB_PATH Signed-off-by: Marko Kovacevic <> Acked-by: Pablo de Lara <>
2018-04-20net/mvpp2: fix buildThomas Monjalon
The iterator RTE_ETH_FOREACH_DEV (added in below commit) requires to enable experimental APIs. Fixing also the config option rename in the build test. Fixes: 8728ccf37615 ("fix ethdev ports enumeration") Fixes: fe93968722af ("net/mrvl: rename PMD as mvpp2") Reported-by: Ferruh Yigit <> Signed-off-by: Thomas Monjalon <> Tested-by: Ferruh Yigit <>
2018-04-04eal: support strlcpy functionBruce Richardson
The strncpy function is error prone for doing "safe" string copies, so we generally try to use "snprintf" instead in the code. The function "strlcpy" is a better alternative, since it better conveys the intention of the programmer, and doesn't suffer from the non-null terminating behaviour of it's n'ed brethern. The downside of this function is that it is not available by default on linux, though standard in the BSD's. It is available on most distros by installing "libbsd" package. This patch therefore provides the following in rte_string_fns.h to ensure that strlcpy is available there: * for BSD, include string.h as normal * if RTE_USE_LIBBSD is set, include <bsd/string.h> * if not set, fallback to snprintf for strlcpy Using make build system, the RTE_USE_LIBBSD is a hard-coded value to "n", but when using meson, it's automatically set based on what is available on the platform. Signed-off-by: Bruce Richardson <> Reviewed-by: Stephen Hemminger <>
2018-04-04devtools: do not create kernel dirPablo de Lara
get-maintainer script requires the creation of some folders, including "kernel". Since now this folder exists in DPDK folder, it is not required to create it. Fixes: acaa9ee991b5 ("move kernel modules directories") Signed-off-by: Pablo de Lara <> Acked-by: Ferruh Yigit <>
2018-02-06compat: relicense some filesNeil Horman
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 <> Acked-by: Hemant Agrawal <>
2018-01-19bb/turbo_sw: add software turbo driverAmr Mokhtar
- bbdev 'turbo_sw' is the software accelerated version of 3GPP L1 Turbo coding operation using the optimized Intel FlexRAN SDK libraries. - 'turbo_sw' pmd is disabled by default Signed-off-by: Amr Mokhtar <> Acked-by: Ferruh Yigit <>
2018-01-17log: remove log level config optionPavan Nikhilesh
Remove RTE_LOG_LEVEL config option, use existing RTE_LOG_DP_LEVEL config option for controlling datapath log level. RTE_LOG_LEVEL is no longer needed as dynamic logging can be used to control global and module specific log levels. Signed-off-by: Pavan Nikhilesh <> Reviewed-by: Olivier Matz <>
2018-01-17devtools: update check-includes exceptionsAdrien Mazarguil
rte_eal_interrupts.h is an internal file not supposed to be included directly by applications. Signed-off-by: Adrien Mazarguil <>
2018-01-16devtools: add mrvl net PMD to test-buildTomasz Duszynski
Add MRVL NET PMD to test build tool. Signed-off-by: Tomasz Duszynski <> Acked-by: Jianbo Liu <>
2018-01-09tools: use SPDX tag for Cavium copyright filesJerin Jacob
Signed-off-by: Jerin Jacob <> Acked-by: Hemant Agrawal <>
2018-01-09devtools: ignore checkpatch warning for maintainers fileThomas Monjalon
The script from Linux is enforcing a tab in the MAINTAINERS file (Linux commit 628f91a28649). It can be ignored in our wrapper Suggested-by: Remy Horton <> Signed-off-by: Thomas Monjalon <> Acked-by: Remy Horton <> Acked-by: Stephen Hemminger <>
2018-01-04tools: use SPDX tag for Intel copyright filesBruce Richardson
Replace the BSD license header with the SPDX tag for scripting files with only an Intel copyright on them. Signed-off-by: Bruce Richardson <>
2018-01-04devtools: add git log checks for SCTP and IOVAFerruh Yigit
Acronyms must be uppercase. Signed-off-by: Ferruh Yigit <>
2018-01-04devtools: enhance error message in get maintainer scriptOlivier Matz
When the DPDK_GETMAINTAINER_PATH variable was not set, the error message from was quite cheap: $ devtools/ --help usage: <patch> Cannot execute DPDK_GETMAINTAINER_PATH Add a more detailed explanation about this variable in the help. Signed-off-by: Olivier Matz <> Acked-by: Ferruh Yigit <>
2017-11-08devtools: add script to get maintainers from patchFerruh Yigit
This is a wrapper to Linux kernel 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 script, like: DPDK_GETMAINTAINER_PATH=~/linux/scripts/ Can be used individually: ./devtools/ <my.patch> Or via git send-email, to add maintainers automatically: git send-email --to-cmd ./devtools/ \ --cc 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 <>
2017-11-08devtools: rework ABI checker scriptOlivier Matz
The initial version of the script had some limitations: - cannot work on a non-clean workspace - environment variables are not documented - no compilation log in case of failure - return success even it abi is incompatible This patch addresses these issues and rework the code. Signed-off-by: Olivier Matz <> Acked-by: Neil Horman <>
2017-11-07devtools: rename build dependency of mlx driversThomas Monjalon
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: 43e9d9794cde ("net/mlx5: support upstream rdma-core") Signed-off-by: Thomas Monjalon <> Acked-by: Nelio Laranjeiro <>