Em Tue, 25 Dec 2018 13:12:58 -0800 Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> escreveu: > On Thu, Dec 20, 2018 at 4:45 AM Mauro Carvalho Chehab > <mchehab+samsung@xxxxxxxxxx> wrote: > > > > Also, it would be good if you merge first the docs-next pull request from > > Jon, as otherwise, you'll see some warnings when building documentation, > > due to an issue at scripts/kernel-doc, whose fix is at documentation tree. > > I don't seem to have that in my pile of pull requests, so docs > creation will warn for a bit. Not a huge deal. Yeah, we can live without that for a while. In any case, the patch that fixes it is this one: 3d9bfb19bd70 ("scripts/kernel-doc: Fix struct and struct field attribute processing") I'm enclosing it as a reference (as seen at Jon's docs-next tree). It is probably worth to just wait for Jon's pull request. Thanks, Mauro From: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> Date: Thu, 22 Nov 2018 13:06:04 +0200 Subject: [PATCH] scripts/kernel-doc: Fix struct and struct field attribute processing The kernel-doc attempts to clear the struct and struct member attributes from the API documentation it produces. It falls short of the job in the following respects: - extra whitespaces are left where __attribute__((...)) was removed, - only a single attribute is removed per struct, - attributes (such as aligned) containing numbers were not removed, - attributes are only cleared from struct fields, not structs themselves. This patch addresses these issues by removing the attributes. Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> Signed-off-by: Jonathan Corbet <corbet@xxxxxxx> diff --git a/scripts/kernel-doc b/scripts/kernel-doc index f9f143145c4b..c5333d251985 100755 --- 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*\{(.*)\}(\s*(__packed|__aligned|__attribute__\s*\(\([a-z0-9,_\s\(\)]*\)\)))*/) { my $decl_type = $1; $declaration_name = $2; my $members = $3; @@ -1073,8 +1073,9 @@ sub dump_struct($$) { # strip comments: $members =~ s/\/\*.*?\*\///gos; # strip attributes - $members =~ s/__attribute__\s*\(\([a-z,_\*\s\(\)]*\)\)//i; - $members =~ s/__aligned\s*\([^;]*\)//gos; + $members =~ s/\s*__attribute__\s*\(\([a-z0-9,_\*\s\(\)]*\)\)//gi; + $members =~ s/\s*__aligned\s*\([^;]*\)//gos; + $members =~ s/\s*__packed\s*//gos; $members =~ s/\s*CRYPTO_MINALIGN_ATTR//gos; # replace DECLARE_BITMAP $members =~ s/DECLARE_BITMAP\s*\(([^,)]+),\s*([^,)]+)\)/unsigned long $1\[BITS_TO_LONGS($2)\]/gos;