mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 01:04:41 +01:00
Coccinelle patches for 7.0
This patch series, from Benjamin Philip <benjamin.philip495@gmail.com>, simplifies and clarifies the handling of output generated by Coccinelle that is sent to standard error. By default, this information goes to /dev/null. The patch series reminds the user of that and encourages them to provide another file name. Signed-off-by: Julia Lawall <julia.lawall@inria.fr> -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEnGZC8gbRfLXdcpA0F+92B3f5RZ0FAmmZ3sYACgkQF+92B3f5 RZ0PLg//Zf3ObDD4RTHw3gjlqYJmFY2I85qS6vj1rc0/VFRbvKH0AHC1l6GwqSNS /rEBvnEy57UxlsKn6HVN+wYoPt9XiOeId4XeroW8efLp4xHT4TQHhjE19cYxre7D Bp3Cs8GZuPkTh0xxozz6/Pr4oQRnrOtVbkgvYo8Yd+4X2KMbbhFyfOg0ft+Vb64h 7w0nvGHmEEmW0UOI77RPZ0ozC8JHSwqWaUCvpkFOEqO9MNh59+oWgtZCPv/kZCfl VktsPfBN7bmxUZwuTgXnIheDj4Nst9XrZeSNinamaN0sEwPv08iiYPXSRxnIn/EV PXEBeX7DrGHJ2V7dXwXbd4E4zMvdn2Hm399iFMlw9zEfI0RbmoI/uJL3IKCP5r5K kHAmsQQbMxac3THvAQOZutJ79KJ70old7dAzkx2Dq9CWe1sZYltBrWRcSM9po6+r T/RAu/YH04kQXyZ20Sk7lYoVVU7oTV12zBNhwq1aV92lM+4fZWh5Pp8klo2LgcJh R0PLNjwFTA2LCQ6K14tOaNbxDg/87y5SVB9+xpPmRRnI7v2WeysPBVrVlKFES5+x cwkxpFSga7XJ6ehNCj1uiBWv2VWiDlvu1cznCZmb2B8jOAwd8TfbF6+DdYHwmbrM qnHV4LorsfKyIrSz3PaHqbjUiytQNlQmfpPDeNVJZSf8ZN5tLfc= =+f+s -----END PGP SIGNATURE----- Merge tag 'cocci-7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jlawall/linux Pull coccinelle updates from Julia Lawall: "This simplifies and clarifies the handling of output generated by Coccinelle that is sent to standard error. By default, this goes to /dev/null. Remind the user of that and encourage them to provide another file name (Benjamin Philip)" * tag 'cocci-7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jlawall/linux: Documentation: Coccinelle: document debug log handling scripts: coccicheck: warn on unset debug file scripts: coccicheck: simplify debug file handling
This commit is contained in:
commit
3544d5ce36
2 changed files with 29 additions and 13 deletions
|
|
@ -127,6 +127,18 @@ To enable verbose messages set the V= variable, for example::
|
|||
|
||||
make coccicheck MODE=report V=1
|
||||
|
||||
By default, coccicheck will print debug logs to stdout and redirect stderr to
|
||||
/dev/null. This can make coccicheck output difficult to read and understand.
|
||||
Debug and error messages can instead be written to a debug file instead by
|
||||
setting the ``DEBUG_FILE`` variable::
|
||||
|
||||
make coccicheck MODE=report DEBUG_FILE="cocci.log"
|
||||
|
||||
Coccinelle cannot overwrite a debug file. Instead of repeatedly deleting a log
|
||||
file, you could include the datetime in the debug file name::
|
||||
|
||||
make coccicheck MODE=report DEBUG_FILE="cocci-$(date -Iseconds).log"
|
||||
|
||||
Coccinelle parallelization
|
||||
--------------------------
|
||||
|
||||
|
|
@ -208,11 +220,10 @@ include options matching the options used when we compile the kernel.
|
|||
You can learn what these options are by using V=1; you could then
|
||||
manually run Coccinelle with debug options added.
|
||||
|
||||
Alternatively you can debug running Coccinelle against SmPL patches
|
||||
by asking for stderr to be redirected to stderr. By default stderr
|
||||
is redirected to /dev/null; if you'd like to capture stderr you
|
||||
can specify the ``DEBUG_FILE="file.txt"`` option to coccicheck. For
|
||||
instance::
|
||||
An easier approach to debug running Coccinelle against SmPL patches is to ask
|
||||
coccicheck to redirect stderr to a debug file. As mentioned in the examples, by
|
||||
default stderr is redirected to /dev/null; if you'd like to capture stderr you
|
||||
can specify the ``DEBUG_FILE="file.txt"`` option to coccicheck. For instance::
|
||||
|
||||
rm -f cocci.err
|
||||
make coccicheck COCCI=scripts/coccinelle/free/kfree.cocci MODE=report DEBUG_FILE=cocci.err
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@ run_cmd_parmap() {
|
|||
if [ $VERBOSE -ne 0 ] ; then
|
||||
echo "Running ($NPROC in parallel): $@"
|
||||
fi
|
||||
if [ "$DEBUG_FILE" != "/dev/null" -a "$DEBUG_FILE" != "" ]; then
|
||||
if [ "$DEBUG_FILE" != "/dev/null" ]; then
|
||||
echo $@>>$DEBUG_FILE
|
||||
$@ 2>>$DEBUG_FILE
|
||||
else
|
||||
|
|
@ -259,13 +259,18 @@ coccinelle () {
|
|||
|
||||
}
|
||||
|
||||
if [ "$DEBUG_FILE" != "/dev/null" -a "$DEBUG_FILE" != "" ]; then
|
||||
if [ -f $DEBUG_FILE ]; then
|
||||
echo "Debug file $DEBUG_FILE exists, bailing"
|
||||
exit
|
||||
fi
|
||||
else
|
||||
DEBUG_FILE="/dev/null"
|
||||
if [ "$DEBUG_FILE" = "" ]; then
|
||||
echo 'You have not explicitly specified the debug file to use.'
|
||||
echo 'Using default "/dev/null" as debug file.'
|
||||
echo 'Debug logs will be printed to stdout.'
|
||||
echo 'You can specify the debug file with "make coccicheck DEBUG_FILE=<debug_file>"'
|
||||
echo ''
|
||||
DEBUG_FILE="/dev/null"
|
||||
fi
|
||||
|
||||
if [ -f $DEBUG_FILE ]; then
|
||||
echo "Debug file $DEBUG_FILE exists, bailing"
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$COCCI" = "" ] ; then
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue