Skip to contentSkip to conversation

checkpatch: debugfs_remove() can take NULL

PATCH Superseded Constantine Shulyupin 2 participants 2 messages Nov 17, 2012 Checkpatch

v1 of 4 Superseded Latest is v4 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 checkpatch: debugfs_remove() can take NULL

From: Constantine Shulyupin <[email protected]>

debugfs_remove() can take a NULL, so let's check and warn about that.

---
 scripts/checkpatch.pl |    8 ++++++++
 1 file changed, 8 insertions(+)
scripts/checkpatch.pl +8 -0
index f18750e..c062476 100755
@@ -3221,6 +3221,14 @@ sub process {
 				     "kfree(NULL) is safe this check is probably not required\n" . $hereprev);
 			}
 		}
+# check for needless debugfs_remove() checks
+		if ($prevline =~ /\bif\s*\(([^\)]*)\)/) {
+			my $expr = $1;
+			if ($line =~ /\bdebugfs_remove\(\Q$expr\E\);/) {
+				WARN("NEEDLESS_DEBUGFS_REMOVE",
+				     "debugfs_remove(NULL) is safe this check is probably not required\n" . $hereprev);
+			}
+		}
 # check for needless usb_free_urb() checks
 		if ($prevline =~ /\bif\s*\(([^\)]*)\)/) {
 			my $expr = $1;
Signature · 1 line
1.7.9.5
maintainer
#1 lore raw
Quoted 18 lines · Constantine Shulyupin

From: Constantine Shulyupin <[email protected]>

debugfs_remove() can take a NULL, so let's check and warn about that.

---
 scripts/checkpatch.pl |    8 ++++++++
 1 file changed, 8 insertions(+)
scripts/checkpatch.pl +1 -0
index f18750e..c062476 100755
@@ -3221,6 +3221,14 @@ sub process {
 				     "kfree(NULL) is safe this check is probably not required\n" . $hereprev);
 			}
 		}
+# check for needless debugfs_remove() checks

scripts/checkpatch.pl sub process { · line 3234

Quoted 10 lines
scripts/checkpatch.pl +7 -0
+		if ($prevline =~ /\bif\s*\(([^\)]*)\)/) {
+			my $expr = $1;
+			if ($line =~ /\bdebugfs_remove\(\Q$expr\E\);/) {
+				WARN("NEEDLESS_DEBUGFS_REMOVE",
+				     "debugfs_remove(NULL) is safe this check is probably not required\n" . $hereprev);
+			}
+		}
 # check for needless usb_free_urb() checks
 		if ($prevline =~ /\bif\s*\(([^\)]*)\)/) {
 			my $expr = $1;

Perhaps debugfs_remove_recursive should be added too.

Please create a consolidated block of tests for these checks of:

if (foo)
something_with(foo)

and add kfree, usb_free_urb and your debugfs_remove (and debugfs_remove_recursive?) to that block so that the "if ($prevline..." test is done only once per patch line.