]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.18-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 24 Aug 2018 19:16:56 +0000 (21:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 24 Aug 2018 19:16:56 +0000 (21:16 +0200)
added patches:
patch-scripts-kernel-doc.patch
scripts-kernel-doc-escape-all-literal-braces-in-regexes.patch

queue-4.18/patch-scripts-kernel-doc.patch [new file with mode: 0644]
queue-4.18/scripts-kernel-doc-escape-all-literal-braces-in-regexes.patch [new file with mode: 0644]

diff --git a/queue-4.18/patch-scripts-kernel-doc.patch b/queue-4.18/patch-scripts-kernel-doc.patch
new file mode 100644 (file)
index 0000000..6530057
--- /dev/null
@@ -0,0 +1,44 @@
+From 701b3a3c0ac42630f74a5efba8545d61ac0e3293 Mon Sep 17 00:00:00 2001
+From: "valdis.kletnieks@vt.edu" <valdis.kletnieks@vt.edu>
+Date: Tue, 17 Jul 2018 12:57:29 -0400
+Subject: PATCH scripts/kernel-doc
+
+From: Valdis Kletnieks <valdis.kletnieks@vt.edu>
+
+commit 701b3a3c0ac42630f74a5efba8545d61ac0e3293 upstream.
+
+Fix a warning whinge from Perl introduced by "scripts: kernel-doc: parse next structs/unions"
+
+Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/({ <-- HERE [^\{\}]*})/ at ./scripts/kernel-doc line 1155.
+Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/({ <-- HERE )/ at ./scripts/kernel-doc line 1179.
+
+Signed-off-by: Valdis Kletnieks <valdis.kletnieks@vt.edu>
+Reviewed-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
+Signed-off-by: Jonathan Corbet <corbet@lwn.net>
+Cc: Nathan Chancellor <natechancellor@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ scripts/kernel-doc |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/scripts/kernel-doc
++++ b/scripts/kernel-doc
+@@ -1152,7 +1152,7 @@ sub dump_struct($$) {
+       }
+       # Ignore other nested elements, like enums
+-      $members =~ s/({[^\{\}]*})//g;
++      $members =~ s/(\{[^\{\}]*})//g;
+       create_parameterlist($members, ';', $file, $declaration_name);
+       check_sections($file, $declaration_name, $decl_type, $sectcheck, $struct_actual);
+@@ -1176,7 +1176,7 @@ sub dump_struct($$) {
+                       $declaration .= "\t" x $level;
+               }
+               $declaration .= "\t" . $clause . "\n";
+-              $level++ if ($clause =~ m/({)/ && !($clause =~m/}/));
++              $level++ if ($clause =~ m/(\{)/ && !($clause =~m/}/));
+       }
+       output_declaration($declaration_name,
+                          'struct',
diff --git a/queue-4.18/scripts-kernel-doc-escape-all-literal-braces-in-regexes.patch b/queue-4.18/scripts-kernel-doc-escape-all-literal-braces-in-regexes.patch
new file mode 100644 (file)
index 0000000..fd114a1
--- /dev/null
@@ -0,0 +1,96 @@
+From 673bb2dfc36488abfdbbfc2ce2631204eaf682f2 Mon Sep 17 00:00:00 2001
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sun, 5 Aug 2018 17:41:09 +0100
+Subject: scripts/kernel-doc: Escape all literal braces in regexes
+
+From: Ben Hutchings <ben@decadent.org.uk>
+
+commit 673bb2dfc36488abfdbbfc2ce2631204eaf682f2 upstream.
+
+Commit 701b3a3c0ac4 ("PATCH scripts/kernel-doc") fixed the two
+instances of literal braces that Perl 5.28 warns about, but there are
+still more than it doesn't warn about.
+
+Escape all left braces that are treated as literal characters.  Also
+escape literal right braces, for consistency and to avoid confusing
+bracket-matching in text editors.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+Signed-off-by: Jonathan Corbet <corbet@lwn.net>
+Cc: Nathan Chancellor <natechancellor@gmail.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ scripts/kernel-doc |   20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+--- a/scripts/kernel-doc
++++ b/scripts/kernel-doc
+@@ -1062,7 +1062,7 @@ sub dump_struct($$) {
+     my $x = shift;
+     my $file = shift;
+-    if ($x =~ /(struct|union)\s+(\w+)\s*{(.*)}/) {
++    if ($x =~ /(struct|union)\s+(\w+)\s*\{(.*)\}/) {
+       my $decl_type = $1;
+       $declaration_name = $2;
+       my $members = $3;
+@@ -1148,20 +1148,20 @@ sub dump_struct($$) {
+                               }
+                       }
+               }
+-              $members =~ s/(struct|union)([^\{\};]+)\{([^\{\}]*)}([^\{\}\;]*)\;/$newmember/;
++              $members =~ s/(struct|union)([^\{\};]+)\{([^\{\}]*)\}([^\{\}\;]*)\;/$newmember/;
+       }
+       # Ignore other nested elements, like enums
+-      $members =~ s/(\{[^\{\}]*})//g;
++      $members =~ s/(\{[^\{\}]*\})//g;
+       create_parameterlist($members, ';', $file, $declaration_name);
+       check_sections($file, $declaration_name, $decl_type, $sectcheck, $struct_actual);
+       # Adjust declaration for better display
+-      $declaration =~ s/([{;])/$1\n/g;
+-      $declaration =~ s/}\s+;/};/g;
++      $declaration =~ s/([\{;])/$1\n/g;
++      $declaration =~ s/\}\s+;/};/g;
+       # Better handle inlined enums
+-      do {} while ($declaration =~ s/(enum\s+{[^}]+),([^\n])/$1,\n$2/);
++      do {} while ($declaration =~ s/(enum\s+\{[^\}]+),([^\n])/$1,\n$2/);
+       my @def_args = split /\n/, $declaration;
+       my $level = 1;
+@@ -1171,12 +1171,12 @@ sub dump_struct($$) {
+               $clause =~ s/\s+$//;
+               $clause =~ s/\s+/ /;
+               next if (!$clause);
+-              $level-- if ($clause =~ m/(})/ && $level > 1);
++              $level-- if ($clause =~ m/(\})/ && $level > 1);
+               if (!($clause =~ m/^\s*#/)) {
+                       $declaration .= "\t" x $level;
+               }
+               $declaration .= "\t" . $clause . "\n";
+-              $level++ if ($clause =~ m/(\{)/ && !($clause =~m/}/));
++              $level++ if ($clause =~ m/(\{)/ && !($clause =~m/\}/));
+       }
+       output_declaration($declaration_name,
+                          'struct',
+@@ -1244,7 +1244,7 @@ sub dump_enum($$) {
+     # strip #define macros inside enums
+     $x =~ s@#\s*((define|ifdef)\s+|endif)[^;]*;@@gos;
+-    if ($x =~ /enum\s+(\w+)\s*{(.*)}/) {
++    if ($x =~ /enum\s+(\w+)\s*\{(.*)\}/) {
+       $declaration_name = $1;
+       my $members = $2;
+       my %_members;
+@@ -1785,7 +1785,7 @@ sub process_proto_type($$) {
+     }
+     while (1) {
+-      if ( $x =~ /([^{};]*)([{};])(.*)/ ) {
++      if ( $x =~ /([^\{\};]*)([\{\};])(.*)/ ) {
+             if( length $prototype ) {
+                 $prototype .= " "
+             }