abi-dumper giving following warning:
WARNING: incompatible build option detected: -O3
Although this patch won't fix warning, it is to ensure code compiled
with optimization disabled.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
The list of git commits to check was in the reversed order.
Also add a comment in the help of checkpatches.sh about list input.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Tested-by: David Marchand <david.marchand@6wind.com>
Depending of the checkpatch version in use, more or less notes are
printed below the report.
Only 6 lines were stripped, resulting to such note being printed:
NOTE: If any of the errors are false positives, please report
them to the maintainer, see CHECKPATCH in MAINTAINERS.
The stripping is now more reliable because based on a very stable pattern.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
When checking a git reference which does not exist, a git error
with the long git-branch usage is printed:
% scripts/check-git-log.sh '-1 3780cbd'
error: malformed object name 2de9f8551ff9
usage: git branch ...
[a lot of lines]
Wrong 'Fixes' reference:
Fixes: 2de9f8551ff9 ("ethdev: fix documentation for queue start/stop")
The error from the script is sufficient so the git error can be hidden.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
This script checks that header files in a given directory do not miss
dependencies when included on their own, do not conflict and accept being
compiled with the strictest possible flags.
It is too slow at the moment to be automatically executed by test-build.sh
and should be run voluntarily (like check-git-log.sh and friends) after
making changes to exported header files.
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Quoting the first line of the script: "#! /bin/echo must be loaded with ."
Given that we should drop the .sh file ending as well as the executable
flag - both are not needed to source the file.
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
John Mcnamara and I were discussing enhancing the validate_abi script to
build the dpdk tree faster with multiple jobs.
Theres no reason not to do it, so this implements that requirement.
It uses a DPDK_MAKE_JOBS variable that can be set by the user to limit
the job count. By default the job count is set to the number of online
cpus.
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
The config option CONFIG_RTE_PCI_CONFIG does not exist anymore.
Fixes: 7d619406f3 ("pci: remove deprecated specific config")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The option CONFIG_RTE_LIBRTE_VHOST_NUMA depends on availability of
libnuma in the system.
The configuration option DPDK_DEP_NUMA can be set if available for
the DPDK_TARGET being built.
Fixes: cd31ca579c ("scripts: add build tests")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The script test-build.sh can be used to test building several
targets with different configurations. The directory name reflects
the target and the customized configuration.
When there is a failure, it is convenient to print this build
directory to quickly know which case is failing without scrolling
the build log history.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Add API, NUMA, HW, SW, FW and VMDq to list of words to capitalize properly.
Since VMDq is a bit unusual, add it as special case check so we can
print an error message giving the correct way to write it.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
A driver patch under net should start with "net/<driver name>" or if
a patch touch multiple drivers, it should only start with "net:".
The same apply for crypto.
A patch touching all drivers (net + crypto) should start with "drivers:".
Longer prefixes like "net/mlx:" (for mlx4/mlx5) or "net/e1000/base:" are
handled by not checking the colon.
The directories doc/ and config/ are ignored because a driver patch
can modify them.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
When running check-git-log.sh on a clean tree it was complaining
of a wrong empty headline because '^[^:]*$' was matching.
It is fixed by matching at least one character with +.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The first word of each commit message is checked.
But when the commit range was greater than 1, only the latest commit
was checked.
It is fixed by checking each commit separately.
Fixes: 9c24780f0d ("scripts: check first word of commit messages")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Tested-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
If there is a change in the config directory the build test
will refresh the tested build config to take into account new options.
The git working directory and the last git commit are checked for a
change in config/.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The commit id of a fixed commit must be in the current branch.
It avoids referencing a local branch or a next-* branch when
pushing in the master.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The driver qede can be automatically enabled if libz is available.
Fixes: ec94dbc573 ("qede: add base driver")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Avoid messages starting with "It" without describing what
it is talking about.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The verbose option was available but not advertised.
Fixes: 6e38dfe213 ("scripts: add verbose test build option")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
It is better to keep the line "Fixes:" longer than 75 characters
than splitting.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
The underlying libsso library that SNOW3G PMD uses has been updated,
so now it is called libsso_snow3g. Also, the path to the library
has been renamed to reflect this changes (now called LIBSSO_SNOW3G_PATH).
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Deepak Kumar Jain <deepak.k.jain@intel.com>
Added new SW PMD which makes use of the libsso_kasumi SW library,
which provides wireless algorithms KASUMI F8 and F9
in software.
This PMD supports cipher-only, hash-only and chained operations
("cipher then hash" and "hash then cipher") of the following
algorithms:
- RTE_CRYPTO_SYM_CIPHER_KASUMI_F8
- RTE_CRYPTO_SYM_AUTH_KASUMI_F9
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Deepak Kumar Jain <deepak.k.jain@intel.com>
The commit 66819e6 has introduced a dependency on libarchive to be able
to use some tar resources in the unit tests.
It is now an optional dependency because some systems do not have it
installed.
If CONFIG_RTE_APP_TEST_RESOURCE_TAR is disabled, the PCI test will not
be run. When a "configure" script will be integrated, the libarchive
availability could be checked to automatically enable the option.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Reviewed-by: Jan Viktorin <viktorin@rehivetech.com>
The new option -n allows to give a number of commits to check
from the git HEAD.
If neither -n nor patch files are given, the commits after
origin/master are checked.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
I got a report like following:
Wrong headline lowercase:
xxx: move vhost device ctx to cuse
It takes a bit while (by checking the code) that it's "ctx" triggers
the warning. It could be spotted very quickly if "tx" is highlighted.
This patch adds such support.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
It reports an false positive warning when the commit subject includes
the word "ctx", as it matches following regexp:
-e 'rx\|tx\|RX\|TX'
Fixes: edbeb7d962 ("scripts: check commit formatting")
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
It was suggesting to use a Linux macro:
CHECK:BIT_MACRO: Prefer using the BIT macro
It is ignored because it is a false positive in DPDK case.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
This script was forgotten when dropping the combined library.
Fixes: 948fd64bef ("mk: replace the combined library with a linker script")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Panu Matilainen <pmatilai@redhat.com>
Add default library output folder to the library search folder.
This is useful for development environment, in production environment
DPDK libraries already should be in know locations.
Patch removes requirement to set LD_LIBRARY_PATH variable when DPDK
compiled as shared library.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
The default was to compile every logs (including debug) and set
the default level to debug.
As some debug logs may hurt performance, a notice is added and the
default level is now info.
In order to enable debug logs, they must be compiled with
RTE_LOG_LEVEL=RTE_LOG_DEBUG and enabled at runtime with --log-level=8.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The git messages have three parts:
1/ the headline
2/ the explanations
3/ the footer tags
The headline helps to quickly browse an history or catch instantly the
purpose of a commit. Making it short with some consistent wording
allows to easily parse it or match some patterns.
The explanations must give some keys like the reason of the change.
Nothing can be automatically checked for this part, except line length.
The footer contains some tags to find the origin of a bug or who
was working on it.
This script is doing some basic checks mostly on parts 1 and 3.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Reviewed-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
These stats will be compiled when adding +debug
to test-build.sh targets:
CONFIG_RTE_LIBRTE_IP_FRAG_TBL_STAT
CONFIG_RTE_SCHED_COLLECT_STATS
CONFIG_RTE_PORT_STATS_COLLECT
CONFIG_RTE_TABLE_STATS_COLLECT
CONFIG_RTE_PIPELINE_STATS_COLLECT
CONFIG_RTE_TEST_PMD_RECORD_BURST_STATS
CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The SNOW3G PMD has a dependency on libsso which can be downloaded
after having passed some Intel validation about export restrictions.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Insert a hook at the end of the config procedure, after having
adapted the configuration to the environment variables and the options
passed to the script.
It allows to better tune the automatic configuration of the build tests
in a function located in the devel config file.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Any build option can be enabled or disabled by appending the end
of its name to the config name.
Examples:
+INTRINSICS to enable CONFIG_RTE_FORCE_INTRINSICS
~RXTX_CALLBACKS to disable CONFIG_RTE_ETHDEV_RXTX_CALLBACKS
These builtin (lowercase) options are also added for convenience:
+debug to enable every debug options
+default to set target machine as default
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The global variables are reloaded between each build to allow
having different config options based on DPDK_TARGET.
Some checks can now be removed from the script as they can
be done in the devel config file.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
This example is not part of the baseline because of its
experimental state. That's why it must be tested separately.
Fixes: b700090c8c ("examples/performance-thread: mark as experimental")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Building with "make install T=" is now deprecated.
The script will test only the standard "make" command.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The option --no-summary will remove this line in quiet mode:
total: 1 errors, 0 warnings, 7 lines checked
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
This patch provides the implementation of an AES-NI accelerated crypto PMD
which is dependent on Intel's multi-buffer library, see the white paper
"Fast Multi-buffer IPsec Implementations on Intel® Architecture Processors"
This PMD supports AES_GCM authenticated encryption and authenticated
decryption using 128-bit AES keys
The patch also contains the related unit tests functions
Signed-off-by: Declan Doherty <declan.doherty@intel.com>
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: John Griffin <john.griffin@intel.com>
The physically linked-together combined library has been an increasing
source of problems, as was predicted when library and symbol versioning
was introduced. Replace the complex and fragile construction with a
simple linker script which achieves the same without all the problems,
remove the related kludges from eg mlx drivers.
Since creating the linker script is practically zero cost, remove the
config option and just create it always.
Based on a patch by Sergio Gonzales Monroy, linker script approach
initially suggested by Neil Horman.
Suggested-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
Suggested-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Fixing build on 32-bit systems on quick assist driver - for example:
drivers/crypto/qat/qat_crypto.c: In function ‘qat_alg_write_mbuf_entry’:
drivers/crypto/qat/qat_crypto.c:408:34: error:
cast from pointer to integer of different size [-Werror=pointer-to-int-cast]
Fixes: 1703e94ac5 ("qat: add driver for QuickAssist devices")
Signed-off-by: John Griffin <john.griffin@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Commit 9cbae2aa64 managed to break the only previously supported
case where a tag is used as a revision, due to git show output
differing between tags and other objects. The hash is on the last
line of the output in both cases though so just grab that.
Fixes: 9cbae2aa64 ("scripts: support any git revisions as ABI validation range")
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>