-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/…
…mmarek/kbuild Pull kbuild misc changes from Michal Marek: "This is the non-critical part of kbuild - scripts/kernel-doc requires a "Return:" section for non-void functions - ARCH=arm SUBARCH=... support for make tags - COMPILED_SOURCE=1 support for make tags (only indexes .c files for which a .o exists) - New coccinelle check - Option parsing fix for scripts/config" * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: scripts/config: Fix wrong "shift" for --keep-case scripts/tags.sh: Support compiled source scripts/tags.sh: Support subarch for ARM scripts/coccinelle/misc/warn.cocci: use WARN scripts/kernel-doc: check that non-void fcts describe their return value Kernel-doc: Convention: Use a "Return" section to describe return values
- Loading branch information
Showing
3 changed files
with
158 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
/// Use WARN(1,...) rather than printk followed by WARN_ON(1) | ||
/// | ||
// Confidence: High | ||
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. GPLv2. | ||
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. GPLv2. | ||
// URL: http://coccinelle.lip6.fr/ | ||
// Comments: | ||
// Options: -no_includes -include_headers | ||
|
||
virtual patch | ||
virtual context | ||
virtual org | ||
virtual report | ||
|
||
@bad1@ | ||
position p; | ||
@@ | ||
|
||
printk(...); | ||
printk@p(...); | ||
WARN_ON(1); | ||
|
||
@r1 depends on context || report || org@ | ||
position p != bad1.p; | ||
@@ | ||
|
||
printk@p(...); | ||
*WARN_ON(1); | ||
|
||
@script:python depends on org@ | ||
p << r1.p; | ||
@@ | ||
cocci.print_main("printk + WARN_ON can be just WARN",p) | ||
@script:python depends on report@ | ||
p << r1.p; | ||
@@ | ||
msg = "SUGGESTION: printk + WARN_ON can be just WARN" | ||
coccilib.report.print_report(p[0],msg) | ||
@ok1 depends on patch@ | ||
expression list es; | ||
position p != bad1.p; | ||
@@ | ||
|
||
-printk@p( | ||
+WARN(1, | ||
es); | ||
-WARN_ON(1); | ||
|
||
@depends on patch@ | ||
expression list ok1.es; | ||
@@ | ||
|
||
if (...) | ||
- { | ||
WARN(1,es); | ||
- } | ||
|
||
// -------------------------------------------------------------------- | ||
|
||
@bad2@ | ||
position p; | ||
@@ | ||
|
||
printk(...); | ||
printk@p(...); | ||
WARN_ON_ONCE(1); | ||
|
||
@r2 depends on context || report || org@ | ||
position p != bad1.p; | ||
@@ | ||
|
||
printk@p(...); | ||
*WARN_ON_ONCE(1); | ||
|
||
@script:python depends on org@ | ||
p << r2.p; | ||
@@ | ||
cocci.print_main("printk + WARN_ON_ONCE can be just WARN_ONCE",p) | ||
@script:python depends on report@ | ||
p << r2.p; | ||
@@ | ||
msg = "SUGGESTION: printk + WARN_ON_ONCE can be just WARN_ONCE" | ||
coccilib.report.print_report(p[0],msg) | ||
@ok2 depends on patch@ | ||
expression list es; | ||
position p != bad2.p; | ||
@@ | ||
|
||
-printk@p( | ||
+WARN_ONCE(1, | ||
es); | ||
-WARN_ON_ONCE(1); | ||
|
||
@depends on patch@ | ||
expression list ok2.es; | ||
@@ | ||
|
||
if (...) | ||
- { | ||
WARN_ONCE(1,es); | ||
- } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters