The patch titled Subject: checkpatch: simplify creating search strings has been added to the -mm mm-nonmm-unstable branch. Its filename is checkpatch-simplify-creating-search-strings.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/checkpatch-simplify-creating-search-strings.patch This patch will later appear in the mm-nonmm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Joe Perches <joe@xxxxxxxxxxx> Subject: checkpatch: simplify creating search strings Date: Wed, 13 Sep 2023 13:37:51 -0700 Patch series "checkpatch: refactor and add new alloc w/ multiply tests". Original alloc function patch by Gustavo Silva. This patch (of 2): Use join and map instead of loops. Link: https://lkml.kernel.org/r/cover.1694636817.git.joe@xxxxxxxxxxx Link: https://lkml.kernel.org/r/ef2ab1a00367e201879d9bff44a2e7e936b87a7e.1694636817.git.joe@xxxxxxxxxxx Signed-off-by: Joe Perches <joe@xxxxxxxxxxx> Cc: Andy Whitcroft <apw@xxxxxxxxxxxxx> (maintainer:CHECKPATCH) Cc: Dwaipayan Ray <dwaipayanray1@xxxxxxxxx> (reviewer:CHECKPATCH) Cc: Gustavo A. R. Silva <gustavoars@xxxxxxxxxx> Cc: Lukas Bulwahn <lukas.bulwahn@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- scripts/checkpatch.pl | 34 +++++++--------------------------- 1 file changed, 7 insertions(+), 27 deletions(-) --- a/scripts/checkpatch.pl~checkpatch-simplify-creating-search-strings +++ a/scripts/checkpatch.pl @@ -625,18 +625,8 @@ our $signature_tags = qr{(?xi: our @link_tags = qw(Link Closes); #Create a search and print patterns for all these strings to be used directly below -our $link_tags_search = ""; -our $link_tags_print = ""; -foreach my $entry (@link_tags) { - if ($link_tags_search ne "") { - $link_tags_search .= '|'; - $link_tags_print .= ' or '; - } - $entry .= ':'; - $link_tags_search .= $entry; - $link_tags_print .= "'$entry'"; -} -$link_tags_search = "(?:${link_tags_search})"; +our $link_tags_search = '(?:' . join('|', @link_tags) . ')'; +our $link_tags_print = "'" . join("' or '", @link_tags) . "'"; our $tracing_logging_tags = qr{(?xi: [=-]*> | @@ -819,15 +809,10 @@ our @mode_permission_funcs = ( ["__ATTR", 2], ); -my $word_pattern = '\b[A-Z]?[a-z]{2,}\b'; - #Create a search pattern for all these functions to speed up a loop below -our $mode_perms_search = ""; -foreach my $entry (@mode_permission_funcs) { - $mode_perms_search .= '|' if ($mode_perms_search ne ""); - $mode_perms_search .= $entry->[0]; -} -$mode_perms_search = "(?:${mode_perms_search})"; +our $mode_perms_search = '(?:' . join('|', map{$_->[0]} @mode_permission_funcs) . ')'; + +my $word_pattern = '\b[A-Z]?[a-z]{2,}\b'; our %deprecated_apis = ( "synchronize_rcu_bh" => "synchronize_rcu", @@ -847,12 +832,7 @@ our %deprecated_apis = ( ); #Create a search pattern for all these strings to speed up a loop below -our $deprecated_apis_search = ""; -foreach my $entry (keys %deprecated_apis) { - $deprecated_apis_search .= '|' if ($deprecated_apis_search ne ""); - $deprecated_apis_search .= $entry; -} -$deprecated_apis_search = "(?:${deprecated_apis_search})"; +our $deprecated_apis_search = '(?:' . join('|', keys %deprecated_apis) . ')'; our $mode_perms_world_writable = qr{ S_IWUGO | @@ -887,7 +867,7 @@ foreach my $entry (keys %mode_permission $mode_perms_string_search .= '|' if ($mode_perms_string_search ne ""); $mode_perms_string_search .= $entry; } -our $single_mode_perms_string_search = "(?:${mode_perms_string_search})"; +our $single_mode_perms_string_search = '(?:' . join('|', keys %mode_permission_string_types) . ')'; our $multi_mode_perms_string_search = qr{ ${single_mode_perms_string_search} (?:\s*\|\s*${single_mode_perms_string_search})* _ Patches currently in -mm which might be from joe@xxxxxxxxxxx are checkpatch-simplify-creating-search-strings.patch checkpatch-add-a-couple-new-alloc-functions-to-alloc-with-multiplies-check.patch