History log of /dpdk/devtools/checkpatches.sh (Results 1 – 25 of 44)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1, v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1
# 19acf5ca 23-Oct-2021 David Marchand <[email protected]>

devtools: forbid additions of __reserved

__reserved is a reserved keyword in Windows system headers.

Signed-off-by: David Marchand <[email protected]>
Acked-by: Bruce Richardson <bruce.rich

devtools: forbid additions of __reserved

__reserved is a reserved keyword in Windows system headers.

Signed-off-by: David Marchand <[email protected]>
Acked-by: Bruce Richardson <[email protected]>
Tested-by: Conor Walsh <[email protected]>

show more ...


# 1eaa8f01 15-Nov-2021 Stephen Hemminger <[email protected]>

devtools: suppress checkpatch warning about strlcpy

Current version of Linux kernel checkpatch now complains about
usages of strlcpy because the Linux kernel prefers strscpy.

WARNING:STRLCPY: Prefe

devtools: suppress checkpatch warning about strlcpy

Current version of Linux kernel checkpatch now complains about
usages of strlcpy because the Linux kernel prefers strscpy.

WARNING:STRLCPY: Prefer strscpy over strlcpy

But DPDK project allows strlcpy, therefore suppress the warning.

Signed-off-by: Stephen Hemminger <[email protected]>
Acked-by: Bruce Richardson <[email protected]>

show more ...


# 8f86ffa6 20-Oct-2021 Bruce Richardson <[email protected]>

devtools: clarify that lines up to 100 characters are ok

Since we allow line lengths of up to 100, and the CI checkpatches job
only check for that amount, the rest of our tooling and docs should
ref

devtools: clarify that lines up to 100 characters are ok

Since we allow line lengths of up to 100, and the CI checkpatches job
only check for that amount, the rest of our tooling and docs should
reflect this reality. Therefore we can:

* adjust the editorconfig to use that value, to save editors (e.g. vim)
from automatically wrapping lines at 80 characters when typing.
[Since python checkers all seem to expect 79 character lines max, add
for python only a 79-char max line length.]

* change the default line length setting in checkpatches script to 100
so as it matches CI and pre-merge checks.

* update the docs to clarify that while 80 chars is recommended, up to
100 characters is acceptable.

Signed-off-by: Bruce Richardson <[email protected]>
Acked-by: Andrew Rybchenko <[email protected]>
Acked-by: Jerin Jacob <[email protected]>
Acked-by: Chenbo Xia <[email protected]>
Acked-by: Chengwen Feng <[email protected]>
Acked-by: Conor Walsh <[email protected]>
Acked-by: Thomas Monjalon <[email protected]>

show more ...


Revision tags: v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1
# 5e2226f1 01-Jul-2021 David Marchand <[email protected]>

devtools: recommend new logtype helpers

Following commit eeded2044af5 ("log: register with standardized names"),
the new helpers should be preferred so that we can maintain a consistent
naming for l

devtools: recommend new logtype helpers

Following commit eeded2044af5 ("log: register with standardized names"),
the new helpers should be preferred so that we can maintain a consistent
naming for logtypes.

Signed-off-by: David Marchand <[email protected]>

show more ...


Revision tags: v21.05, v21.05-rc4
# d991d879 19-May-2021 Ferruh Yigit <[email protected]>

devtools: check %l format specifier

%lx or %llx tend to be wrong for 32-bit platform
if used for fixed size variable like uint64_t.
A checkpatch warning will avoid this common mistake.

Signed-off-b

devtools: check %l format specifier

%lx or %llx tend to be wrong for 32-bit platform
if used for fixed size variable like uint64_t.
A checkpatch warning will avoid this common mistake.

Signed-off-by: Ferruh Yigit <[email protected]>
Signed-off-by: Thomas Monjalon <[email protected]>

show more ...


# 701f9f15 20-May-2021 David Marchand <[email protected]>

devtools: warn about old release notes updates

Touching release notes should only be for the current version.

Signed-off-by: David Marchand <[email protected]>


Revision tags: v21.05-rc3
# 428eaeb8 11-May-2021 Thomas Monjalon <[email protected]>

doc: remove PDF requirements

The documentation is generated in HTML only.
The PDF format is abandoned since DPDK 20.11
while dropping support of the make-based build.

This decision has been mention

doc: remove PDF requirements

The documentation is generated in HTML only.
The PDF format is abandoned since DPDK 20.11
while dropping support of the make-based build.

This decision has been mentioned by the Technical Board:
https://mails.dpdk.org/archives/dev/2021-January/195549.html

Fixes: 3cc6ecfdfe85 ("build: remove makefiles")
Cc: [email protected]

Signed-off-by: Thomas Monjalon <[email protected]>
Reviewed-by: Ruifeng Wang <[email protected]>

show more ...


Revision tags: v21.05-rc2, v21.05-rc1, v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2, v21.02-rc1, v20.11, v20.11-rc5, v20.11-rc4, v20.11-rc3, v20.11-rc2, v20.11-rc1
# b9b10ddb 12-Aug-2020 Thomas Monjalon <[email protected]>

switch default git branch name to main

The default git branch of the main DPDK repository has been renamed
from master to main.

Signed-off-by: Thomas Monjalon <[email protected]>
Acked-by: Bruce

switch default git branch name to main

The default git branch of the main DPDK repository has been renamed
from master to main.

Signed-off-by: Thomas Monjalon <[email protected]>
Acked-by: Bruce Richardson <[email protected]>

show more ...


Revision tags: v20.08, v20.08-rc4
# fcea4c8e 04-Aug-2020 Adrian Moreno <[email protected]>

devtools: ignore Linux-style fallthrough warning

The PREFER_FALLTHROUGH check warns if a passthrough comment is found
because, in the kernel, the special macro "fallthrough" is preferred.

Since tha

devtools: ignore Linux-style fallthrough warning

The PREFER_FALLTHROUGH check warns if a passthrough comment is found
because, in the kernel, the special macro "fallthrough" is preferred.

Since that keyword is not defined in DPDK, ignore the warning.

Ignoring this check does not affect the MISSING_BREAK check that will
warn if a switch case/default is not preceded by break or a fallthrough
comment.

Signed-off-by: Adrian Moreno <[email protected]>
Acked-by: Ferruh Yigit <[email protected]>
Acked-by: Chenbo Xia <[email protected]>

show more ...


Revision tags: v20.08-rc3, v20.08-rc2, v20.08-rc1
# b1214d98 23-Jun-2020 Ciara Power <[email protected]>

devtools: standardize script arguments

This patch modifies the arguments expected by the check-git-log script,
to match the format of arguments for the checkpatches script. Both
scripts now take cer

devtools: standardize script arguments

This patch modifies the arguments expected by the check-git-log script,
to match the format of arguments for the checkpatches script. Both
scripts now take certain argument options in the same format, making
them easier to use.
e.g. Both now take a commit ID range by "-r <range>"

The checkpatches help print is also updated to include the "-h" option.

The contributor's guide includes the usage of both the checkpatches and
check-git-log scripts, which needed to be updated to reflect the now
standardised format.

Signed-off-by: Ciara Power <[email protected]>
Acked-by: Ferruh Yigit <[email protected]>
Reviewed-by: Thomas Monjalon <[email protected]>

show more ...


# b071f1fa 16-Jul-2020 David Marchand <[email protected]>

devtools: avoid explicit experimental build flag

-DALLOW_EXPERIMENTAL_API is always set for in-tree compilation since
https://git.dpdk.org/dpdk/commit/?id=acec04c4b2f5

Warn people not to copy/paste

devtools: avoid explicit experimental build flag

-DALLOW_EXPERIMENTAL_API is always set for in-tree compilation since
https://git.dpdk.org/dpdk/commit/?id=acec04c4b2f5

Warn people not to copy/paste this flag that was needed before.

Signed-off-by: David Marchand <[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 ...


# 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 ...


# 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 ...


Revision tags: v20.05, v20.05-rc4
# 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 ...


Revision tags: v20.05-rc3, v20.05-rc2, v20.05-rc1
# 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 ...


# fba5af82 25-Apr-2020 Haiyue Wang <[email protected]>

eal: add internal ABI tag definition

Introduce the __rte_internal tag to mark internal ABI function which is
used only by the drivers or other libraries.
Like for __rte_experimental, this tag must b

eal: add internal ABI tag definition

Introduce the __rte_internal tag to mark internal ABI function which is
used only by the drivers or other libraries.
Like for __rte_experimental, this tag must be on a separate line before
function proprotypes.

Signed-off-by: Haiyue Wang <[email protected]>

show more ...


Revision tags: v20.02, v20.02-rc4, v20.02-rc3
# 2d206369 10-Feb-2020 Thomas Monjalon <[email protected]>

devtools: check use of compiler attributes

The keyword __attribute__ will emit a warning,
because it is preferred to use or define a common __rte macro.
The centralized macros may help to control or

devtools: check use of compiler attributes

The keyword __attribute__ will emit a warning,
because it is preferred to use or define a common __rte macro.
The centralized macros may help to control or workaround some compilers.

Signed-off-by: Thomas Monjalon <[email protected]>

show more ...


# 7b6875ba 15-Feb-2020 Lance Richardson <[email protected]>

devtools: warn on C99-style comment

C99-style comments are not permitted according to DPDK coding
style guidelines, enable checking for these by checkpatch.pl.

Signed-off-by: Lance Richardson <lanc

devtools: warn on C99-style comment

C99-style comments are not permitted according to DPDK coding
style guidelines, enable checking for these by checkpatch.pl.

Signed-off-by: Lance Richardson <[email protected]>

show more ...


Revision tags: v20.02-rc2, v20.02-rc1, v19.11, v19.11-rc4, v19.11-rc3, v19.11-rc2, v19.11-rc1
# 2c7845a7 13-Aug-2019 David Marchand <[email protected]>

devtools: fix cleanup of checkpatch temporary file

The regexp part of the cleanup routine was not updated accordingly when
a common prefix for temp files was introduced.
Set the trap handler only wh

devtools: fix cleanup of checkpatch temporary file

The regexp part of the cleanup routine was not updated accordingly when
a common prefix for temp files was introduced.
Set the trap handler only when required.

Fixes: ff37ca5d3773 ("devtools: use a common prefix for temporary files")
Cc: [email protected]

Signed-off-by: David Marchand <[email protected]>

show more ...


Revision tags: v19.08, v19.08-rc4, v19.08-rc3, v19.08-rc2
# 4a4a20c4 11-Jul-2019 Olivier Matz <[email protected]>

devtools: support FreeBSD

- As "readlink -e" and "readlink -m" do not exist on freebsd,
use "readlink -f", it should not have any impact in these cases.
- "sed -ri" is invalid on freebsd and shoul

devtools: support FreeBSD

- As "readlink -e" and "readlink -m" do not exist on freebsd,
use "readlink -f", it should not have any impact in these cases.
- "sed -ri" is invalid on freebsd and should be replaced by
"sed -ri=''"
- Use gmake instead of make.

This fixes the following command:
SYSDIR=/usr/src/sys ./devtools/test-build.sh \
-j4 x86_64-native-freebsd-gcc

Signed-off-by: Olivier Matz <[email protected]>
Reviewed-by: David Marchand <[email protected]>

show more ...


Revision tags: v19.08-rc1
# a70ed388 23-May-2019 Olivier Matz <[email protected]>

devtools: pass custom options to checkpatch

Add the ability to pass custom options to checkpatch script. An example
of use is to change the output format so it can run in emacs compilation
mode:

devtools: pass custom options to checkpatch

Add the ability to pass custom options to checkpatch script. An example
of use is to change the output format so it can run in emacs compilation
mode:

DPDK_CHECKPATCH_PATH=/path/to/linux/scripts/checkpatch.pl \
DPDK_CHECKPATCH_OPTIONS='--emacs --showfile --no-color' \
/path/to/dpdk.org/devtools/checkpatches.sh

Signed-off-by: Olivier Matz <[email protected]>
Acked-by: Thomas Monjalon <[email protected]>
Acked-by: Ferruh Yigit <[email protected]>

show more ...


# 18218713 29-Jun-2019 David Marchand <[email protected]>

enforce experimental tag at beginning of declarations

Putting a '__attribute__((deprecated))' in the middle of a function
prototype does not result in the expected result with gcc (while clang
is fi

enforce experimental tag at beginning of declarations

Putting a '__attribute__((deprecated))' in the middle of a function
prototype does not result in the expected result with gcc (while clang
is fine with this syntax).

$ cat deprecated.c
void * __attribute__((deprecated)) incorrect() { return 0; }
__attribute__((deprecated)) void *correct(void) { return 0; }
int main(int argc, char *argv[]) { incorrect(); correct(); return 0; }
$ gcc -o deprecated.o -c deprecated.c
deprecated.c: In function ‘main’:
deprecated.c:3:1: warning: ‘correct’ is deprecated (declared at
deprecated.c:2) [-Wdeprecated-declarations]
int main(int argc, char *argv[]) { incorrect(); correct(); return 0; }
^

Move the tag on a separate line and make it the first thing of function
prototypes.
This is not perfect but we will trust reviewers to catch the other not
so easy to detect patterns.

sed -i \
-e '/^\([^#].*\)\?__rte_experimental */{' \
-e 's//\1/; s/ *$//; i\' \
-e __rte_experimental \
-e '/^$/d}' \
$(git grep -l __rte_experimental -- '*.h')

Special mention for rte_mbuf_data_addr_default():

There is either a bug or a (not yet understood) issue with gcc.
gcc won't drop this inline when unused and rte_mbuf_data_addr_default()
calls rte_mbuf_buf_addr() which itself is experimental.
This results in a build warning when not accepting experimental apis
from sources just including rte_mbuf.h.

For this specific case, we hide the call to rte_mbuf_buf_addr() under
the ALLOW_EXPERIMENTAL_API flag.

Signed-off-by: Adrien Mazarguil <[email protected]>
Signed-off-by: David Marchand <[email protected]>

show more ...


# cfe3aeb1 29-Jun-2019 David Marchand <[email protected]>

remove experimental tags from all symbol definitions

We had some inconsistencies between functions prototypes and actual
definitions.
Let's avoid this by only adding the experimental tag to the prot

remove experimental tags from all symbol definitions

We had some inconsistencies between functions prototypes and actual
definitions.
Let's avoid this by only adding the experimental tag to the prototypes.
Tests with gcc and clang show it is enough.

git grep -l __rte_experimental |grep \.c$ |while read file; do
sed -i -e '/^__rte_experimental$/d' $file;
sed -i -e 's/ *__rte_experimental//' $file;
sed -i -e 's/__rte_experimental *//' $file;
done

Signed-off-by: David Marchand <[email protected]>
Acked-by: Adrien Mazarguil <[email protected]>
Acked-by: Neil Horman <[email protected]>

show more ...


Revision tags: v19.05
# ee2b25c8 10-May-2019 David Marchand <[email protected]>

devtools: select patches to check with git range

Rather than default to origin/master.., it can be handy to choose the
range you want to check.

Example on a branch rebased on next-net:

Before:
$ .

devtools: select patches to check with git range

Rather than default to origin/master.., it can be handy to choose the
range you want to check.

Example on a branch rebased on next-net:

Before:
$ ./devtools/checkpatches.sh
...
...
67/69 valid patches

After:
$ ./devtools/checkpatches.sh -r next-net/master..

3/3 valid patches

Signed-off-by: David Marchand <[email protected]>
Acked-by: Thomas Monjalon <[email protected]>

show more ...


12