Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1430690 > unrolled thread

[PATCH v4 1/2] checkpatch: testing more config for Kconfig help text

Started byYingjoe Chen <yingjoe.chen@mediatek.com>
First post2016-06-24 16:20 +0200
Last post2016-06-24 16:20 +0200
Articles 2 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [PATCH v4 1/2] checkpatch: testing more config for Kconfig help text Yingjoe Chen <yingjoe.chen@mediatek.com> - 2016-06-24 16:20 +0200
    [PATCH v4 2/2] checkpatch: add Kconfig 'default n' test Yingjoe Chen <yingjoe.chen@mediatek.com> - 2016-06-24 16:20 +0200

#1430690 — [PATCH v4 1/2] checkpatch: testing more config for Kconfig help text

FromYingjoe Chen <yingjoe.chen@mediatek.com>
Date2016-06-24 16:20 +0200
Subject[PATCH v4 1/2] checkpatch: testing more config for Kconfig help text
Message-ID<rNA7D-Hi-13@gated-at.bofh.it>
Current help text check only check a config option if it is followed
by another config.
Adding check for help text if the next entry is menuconfig, choice/
endchoice, comment, menu/endmenu, if/endif, source or end of file.

Signed-off-by: Yingjoe Chen <yingjoe.chen@mediatek.com>
---
checkpatch Kconfig checking stuff again.

Change in this round:
In 'default n' check, don't warn if user comment on why the
'default n' is neccessary.

I also change patch order. The first one extend help message check
to check for all available config entries. If you think 'default n'
check is not that useful, please consider just merge this one.

Let me know what you think. Thanks.

Change in v3:
- Rebase to v4.7-rc1

Change in v2:
- Change according to Joe Perches' suggestion
---
 scripts/checkpatch.pl | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 6750595..19b270b 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2646,6 +2646,12 @@ sub process {
 				next if ($f =~ /^-/);
 				last if (!$file && $f =~ /^\@\@/);
 
+				if ($f !~ /^[+\- ]/) {
+					# End of file
+					$is_end = 1;
+					last;
+				}
+
 				if ($lines[$ln - 1] =~ /^\+\s*(?:bool|tristate)\s*\"/) {
 					$is_start = 1;
 				} elsif ($lines[$ln - 1] =~ /^\+\s*(?:---)?help(?:---)?$/) {
@@ -2656,7 +2662,7 @@ sub process {
 				$f =~ s/#.*//;
 				$f =~ s/^\s+//;
 				next if ($f =~ /^$/);
-				if ($f =~ /^\s*config\s/) {
+				if ($f =~ /^(?:config\s|menuconfig\s|choice\s|endchoice\s*$|comment\s|menu\s|endmenu\s*$|if\s|endif\s*$|source\s)/) {
 					$is_end = 1;
 					last;
 				}
-- 
1.9.1

[toc] | [next] | [standalone]


#1430691 — [PATCH v4 2/2] checkpatch: add Kconfig 'default n' test

FromYingjoe Chen <yingjoe.chen@mediatek.com>
Date2016-06-24 16:20 +0200
Subject[PATCH v4 2/2] checkpatch: add Kconfig 'default n' test
Message-ID<rNA7D-Hi-17@gated-at.bofh.it>
In reply to#1430690
If a Kconfig config option doesn't specify 'default', the default
will be n. Adding 'default n' is unnecessary.

Add a test to warn about this.

Signed-off-by: Yingjoe Chen <yingjoe.chen@mediatek.com>
---
 scripts/checkpatch.pl | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 19b270b..b3f1fda 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2689,6 +2689,13 @@ sub process {
 			     "Use of boolean is deprecated, please use bool instead.\n" . $herecurr);
 		}
 
+# discourage the use of default n
+		if ($realfile =~ /Kconfig/ &&
+		    $line =~ /^\+\s*default\s*n$/i) {
+			WARN("CONFIG_DEFAULT_N",
+			     "Use of default n is unnecessary, default is n when omitted.\n" . $herecurr);
+		}
+
 		if (($realfile =~ /Makefile.*/ || $realfile =~ /Kbuild.*/) &&
 		    ($line =~ /\+(EXTRA_[A-Z]+FLAGS).*/)) {
 			my $flag = $1;
-- 
1.9.1

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web