| db48bae2 | 17-Jul-2020 |
Phil Yang <[email protected]> |
mbuf: use C11 atomic builtins for refcnt
Use C11 atomic builtins with explicit ordering instead of rte_atomic ops which enforce unnecessary barriers on aarch64.
Suggested-by: Olivier Matz <olivier.
mbuf: use C11 atomic builtins for refcnt
Use C11 atomic builtins with explicit ordering instead of rte_atomic ops which enforce unnecessary barriers on aarch64.
Suggested-by: Olivier Matz <[email protected]> Suggested-by: Dodji Seketeli <[email protected]> Signed-off-by: Phil Yang <[email protected]> Reviewed-by: Ruifeng Wang <[email protected]> Acked-by: Olivier Matz <[email protected]>
show more ...
|
| f1602b4a | 17-Jul-2020 |
Phil Yang <[email protected]> |
devtools: prevent use of legacy atomic API
In order to deprecate the rte_atomic and rte_smp barrier APIs [1], prevent the patches from using these APIs and __sync builtins in new code. Please use __
devtools: prevent use of legacy atomic API
In order to deprecate the rte_atomic and rte_smp barrier APIs [1], prevent the patches from using these APIs and __sync builtins in new code. Please use __atomic builtins instead of __sync builtins, rte_atomicNN_xxx and rte_smp_[r/w]mb APIs.
On x86 the __atomic_thread_fence(__ATOMIC_SEQ_CST) is quite expensive for SMP case. Flag the new code which use __atomic_thread_fence API. Please use rte_thread_fence API instead of __atomic_thread_fence builtins.
1: Refer to the locks-and-atomic-operations section in https://doc.dpdk.org/guides/prog_guide/writing_efficient_code.html
Signed-off-by: Phil Yang <[email protected]> Reviewed-by: Ruifeng Wang <[email protected]>
show more ...
|
| cfe4ca10 | 08-Jul-2020 |
David Marchand <[email protected]> |
devtools: give some hints for ABI errors
abidiff can provide some more information about the ABI difference it detected. In all cases, a discussion on the mailing must happen but we can give some hi
devtools: give some hints for ABI errors
abidiff can provide some more information about the ABI difference it detected. In all cases, a discussion on the mailing must happen but we can give some hints to know if this is a problem with the script calling abidiff, a potential ABI breakage or an unambiguous ABI breakage.
Signed-off-by: David Marchand <[email protected]> Acked-by: Ray Kinsella <[email protected]> Acked-by: Neil Horman <[email protected]> Acked-by: Aaron Conole <[email protected]>
show more ...
|
| e0a43946 | 09-Jul-2020 |
Phil Yang <[email protected]> |
eal/linux: use C11 atomics for interrupt status
The event status is defined as a volatile variable and shared between threads. Use C11 atomic built-ins with explicit ordering instead of rte_atomic o
eal/linux: use C11 atomics for interrupt status
The event status is defined as a volatile variable and shared between threads. Use C11 atomic built-ins with explicit ordering instead of rte_atomic ops which enforce unnecessary barriers on aarch64.
The event status has been cleaned up by the compare-and-swap operation when we free the event data, so there is no need to set it to invalid after that.
Signed-off-by: Phil Yang <[email protected]> Reviewed-by: Ruifeng Wang <[email protected]> Reviewed-by: Honnappa Nagarahalli <[email protected]> Reviewed-by: Harman Kalra <[email protected]>
show more ...
|
| db1162b4 | 19-Jun-2020 |
Ferruh Yigit <[email protected]> |
devtools: add acronyms in dictionary for commit checks
Verbs -> DevX ->
Signed-off-by: Ferruh Yigit <[email protected]> |
| 7762e013 | 26-Jun-2020 |
David Marchand <[email protected]> |
build: remove special versioning for non stable libraries
Having a special versioning for experimental/internal libraries put a additional maintenance cost while this status is already announced in
build: remove special versioning for non stable libraries
Having a special versioning for experimental/internal libraries put a additional maintenance cost while this status is already announced in MAINTAINERS and the library headers/documentation. Following discussions and vote at 05/20 TB meeting [1], use a single versioning for all libraries in DPDK.
Note: for the ABI check, an exception [2] had been added when tweaking this special versioning [3]. Prefer explicit libabigail rules (which will be dropped in 20.11).
1: https://mails.dpdk.org/archives/dev/2020-May/168450.html 2: https://git.dpdk.org/dpdk/commit/?id=23d7ad5db41c 3: https://git.dpdk.org/dpdk/commit/?id=ec2b8cd7ed69
Signed-off-by: David Marchand <[email protected]> Acked-by: Ray Kinsella <[email protected]> Acked-by: Bruce Richardson <[email protected]>
show more ...
|
| 4c4f8394 | 06-Jul-2020 |
David Marchand <[email protected]> |
devtools: fix check of variable declaration inside for
An expression with a space is split by the awk script resulting in false positive for any patch matching any of the two part of the expression.
devtools: fix check of variable declaration inside for
An expression with a space is split by the awk script resulting in false positive for any patch matching any of the two part of the expression. Fix this by using [[:space:]].
Fixes: 43e73483a4b8 ("devtools: forbid variable declaration inside for")
Signed-off-by: David Marchand <[email protected]>
show more ...
|
| 8d4a222e | 06-Jul-2020 |
David Marchand <[email protected]> |
devtools: fix path in forbidden token check
Fix displayed filename by adjusting the extraction from the patch.
Before: Warning in /lib/librte_eal/linux/eal.c:
After: Warning in lib/librte_eal/linu
devtools: fix path in forbidden token check
Fix displayed filename by adjusting the extraction from the patch.
Before: Warning in /lib/librte_eal/linux/eal.c:
After: Warning in lib/librte_eal/linux/eal.c:
Fixes: 7413e7f2aeb3 ("devtools: alert on new calls to exit from libs") Cc: [email protected]
Signed-off-by: David Marchand <[email protected]>
show more ...
|
| 5a3f8041 | 08-Jun-2020 |
Thomas Monjalon <[email protected]> |
devtools: allow ENOSYS in checkpatch
The Linux checkpatch default is warning on the use of ENOSYS. This is allowed in DPDK API.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: Ferruh
devtools: allow ENOSYS in checkpatch
The Linux checkpatch default is warning on the use of ENOSYS. This is allowed in DPDK API.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: Ferruh Yigit <[email protected]>
show more ...
|
| 0b8086ce | 24-May-2020 |
Thomas Monjalon <[email protected]> |
devtools: remove useless files from ABI reference
When building an ABI reference with meson, some static libraries are built and linked in apps. They are useless and take a lot of space. Those binar
devtools: remove useless files from ABI reference
When building an ABI reference with meson, some static libraries are built and linked in apps. They are useless and take a lot of space. Those binaries, and other useless files (examples and doc files) in the share/ directory, are removed after being installed.
In order to save time when building the ABI reference, the examples (which are not installed anyway) are not compiled.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: David Marchand <[email protected]>
show more ...
|
| 43e73483 | 24-May-2020 |
Thomas Monjalon <[email protected]> |
devtools: forbid variable declaration inside for
Some compilers raise an error when declaring a variable in the middle of a function. This is a C99 allowance. Even if DPDK switches globally to C99 o
devtools: forbid variable declaration inside for
Some compilers raise an error when declaring a variable in the middle of a function. This is a C99 allowance. Even if DPDK switches globally to C99 or C11 standard, the coding rules are for declarations at the beginning of a block: http://doc.dpdk.org/guides/contributing/coding_style.html#local-variables
This coding style is enforced by adding a check of the common patterns like "for (int i;"
The occurrences of the checked pattern are fixed: 'for *(\(char\|u\?int\|unsigned\|s\?size_t\)' In the file dpaa2_sparser.c, the fix is to remove the unused macros.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: David Marchand <[email protected]>
show more ...
|
| ca39d3a8 | 30-Jun-2020 |
Bruce Richardson <[email protected]> |
devtools: test static linkage with pkg-config
The pkg-config file was tested by building some of the examples using make, pulling the cflags and ldflags from the pkg-config file for DPDK. However, t
devtools: test static linkage with pkg-config
The pkg-config file was tested by building some of the examples using make, pulling the cflags and ldflags from the pkg-config file for DPDK. However, this only tested the shared library linkage, and not the static, so this patch updates it to test both.
Signed-off-by: Bruce Richardson <[email protected]> Acked-by: Luca Boccassi <[email protected]> Acked-by: Sunil Pai G <[email protected]>
show more ...
|
| 3b643139 | 14-Jun-2020 |
Thomas Monjalon <[email protected]> |
devtools: add Windows cross-build test with MinGW
The Meson cross file is renamed from meson_mingw.txt to cross-mingw, and is added to test-meson-builds.sh.
The only example supported on Windows so
devtools: add Windows cross-build test with MinGW
The Meson cross file is renamed from meson_mingw.txt to cross-mingw, and is added to test-meson-builds.sh.
The only example supported on Windows so far is "helloworld", that's why the default list of examples is overridden.
Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|
| b2b3858a | 14-Jun-2020 |
Thomas Monjalon <[email protected]> |
devtools: add ppc64 in meson build test
Add cross-compilation support of a PPC target in the build test matrix. The CPU is defined as Power8, running as little endian.
Signed-off-by: Thomas Monjalo
devtools: add ppc64 in meson build test
Add cross-compilation support of a PPC target in the build test matrix. The CPU is defined as Power8, running as little endian.
Signed-off-by: Thomas Monjalon <[email protected]> Reviewed-by: David Christensen <[email protected]>
show more ...
|
| 3932237f | 14-Jun-2020 |
Thomas Monjalon <[email protected]> |
devtools: allow non-standard toolchain in meson test
If a compiler is not found in $PATH, the compilation test is skipped. In some cases, the compiler could be found after extending $PATH in an envi
devtools: allow non-standard toolchain in meson test
If a compiler is not found in $PATH, the compilation test is skipped. In some cases, the compiler could be found after extending $PATH in an environment configuration script (called by load-devel-config).
The decision to skip is deferred to a later stage, after loading the configuration script.
In such case, the variable DPDK_TARGET, used by the configuration script as input, is the compiler name.
Signed-off-by: Thomas Monjalon <[email protected]> Reviewed-by: David Christensen <[email protected]>
show more ...
|
| 444e5567 | 14-Jun-2020 |
Thomas Monjalon <[email protected]> |
devtools: shrink cross-compilation test definition
Each cross-compilation case needs to define the target compiler and the meson cross file. Given the compiler is already defined in the cross file,
devtools: shrink cross-compilation test definition
Each cross-compilation case needs to define the target compiler and the meson cross file. Given the compiler is already defined in the cross file, the latter is enough.
The function "build" is changed to accept a cross file alternatively to the compiler name. In the case of a file (detected if readable), the compiler is extracted with sed and tr, and the option --cross-file is automatically added.
Signed-off-by: Thomas Monjalon <[email protected]> Reviewed-by: David Christensen <[email protected]>
show more ...
|
| 3d4b2afb | 19-Mar-2020 |
David Marchand <[email protected]> |
doc: prefer https when pointing to dpdk.org
for file in $(git grep -l http://.*dpdk.org doc/); do sed -i -e 's#http://\(.*dpdk.org\)#https://\1#g' $file; done
Cc: [email protected]
Signed-off-by:
doc: prefer https when pointing to dpdk.org
for file in $(git grep -l http://.*dpdk.org doc/); do sed -i -e 's#http://\(.*dpdk.org\)#https://\1#g' $file; done
Cc: [email protected]
Signed-off-by: David Marchand <[email protected]> Acked-by: Kevin Traynor <[email protected]>
show more ...
|
| 28ac1a49 | 20-May-2020 |
Ferruh Yigit <[email protected]> |
devtools: add acronyms in dictionary for commit checks
AltiVec -> IOTLB -> Input/Output Translation Lookaside Buffer IPsec -> Internet Protocol security PPPoE -> Point-to-Point Protocol over E
devtools: add acronyms in dictionary for commit checks
AltiVec -> IOTLB -> Input/Output Translation Lookaside Buffer IPsec -> Internet Protocol security PPPoE -> Point-to-Point Protocol over Ethernet PVID -> Port VLAN IDentifier
Signed-off-by: Ferruh Yigit <[email protected]>
show more ...
|
| 67354349 | 16-Apr-2020 |
Neil Horman <[email protected]> |
devtools: remove old ABI validation script
Since we've moved away from our initial validate-abi.sh script, in favor of check-abi.sh, which uses libabigail, remove the old script from the tree, and u
devtools: remove old ABI validation script
Since we've moved away from our initial validate-abi.sh script, in favor of check-abi.sh, which uses libabigail, remove the old script from the tree, and update the docs accordingly.
Signed-off-by: Neil Horman <[email protected]> Signed-off-by: Thomas Monjalon <[email protected]>
show more ...
|
| ef5391b7 | 20-May-2020 |
Thomas Monjalon <[email protected]> |
devtools: allow warnings in ABI reference build
There is no point in forcing warning-free compilation when building an ABI reference. It is only preventing from compiling ABI reference of old releas
devtools: allow warnings in ABI reference build
There is no point in forcing warning-free compilation when building an ABI reference. It is only preventing from compiling ABI reference of old releases with recent compilers.
Note: DPDK 20.02 is built (with warnings) by GCC 10 if using -fcommon.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: David Marchand <[email protected]> Acked-by: Kevin Traynor <[email protected]>
show more ...
|
| c2403cd7 | 30-Apr-2020 |
Haiyue Wang <[email protected]> |
devtools: preserve internal section on ABI bump
INTERNAL is a newly introduced version, update the script used to bump ABI in all map files but leaving internal section exactly as it is.
Signed-off
devtools: preserve internal section on ABI bump
INTERNAL is a newly introduced version, update the script used to bump ABI in all map files but leaving internal section exactly as it is.
Signed-off-by: Haiyue Wang <[email protected]> Acked-by: David Marchand <[email protected]>
show more ...
|
| 2be66870 | 30-Apr-2020 |
Haiyue Wang <[email protected]> |
devtools: handle internal version in symbols check
INTERNAL is a newly introduced version, update the shell script that checks whether built libraries are versioned with expected ABI (current ABI, c
devtools: handle internal version in symbols check
INTERNAL is a newly introduced version, update the shell script that checks whether built libraries are versioned with expected ABI (current ABI, current ABI + 1, EXPERIMENTAL, or INTERNAL).
Signed-off-by: Haiyue Wang <[email protected]> Acked-by: David Marchand <[email protected]>
show more ...
|
| 8b9dae0c | 04-May-2020 |
Jerin Jacob <[email protected]> |
doc: use globbing terminology
Glob is the terminology used in fnmatch man page. Use glob terminology across DPDK for shell pattern.
Signed-off-by: Jerin Jacob <[email protected]> Acked-by: Thomas
doc: use globbing terminology
Glob is the terminology used in fnmatch man page. Use glob terminology across DPDK for shell pattern.
Signed-off-by: Jerin Jacob <[email protected]> Acked-by: Thomas Monjalon <[email protected]>
show more ...
|
| 6b6ca751 | 15-May-2020 |
Hemant Agrawal <[email protected]> |
drivers: mark internal NXP symbols
This patch moves the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage.
Signed-off-by: Hemant Agrawal <hemant.agraw
drivers: mark internal NXP symbols
This patch moves the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage.
Signed-off-by: Hemant Agrawal <[email protected]> Acked-by: Ray Kinsella <[email protected]>
show more ...
|
| 4d1f7981 | 15-May-2020 |
Hemant Agrawal <[email protected]> |
drivers/mempool: mark internal NXP symbols
This patch moves the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage.
Signed-off-by: Hemant Agrawal <hema
drivers/mempool: mark internal NXP symbols
This patch moves the internal symbols to INTERNAL sections so that any change in them is not reported as ABI breakage.
Signed-off-by: Hemant Agrawal <[email protected]> Acked-by: Ray Kinsella <[email protected]>
show more ...
|