Don't print anonymous union/struct to html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Just to be clear, I don't actually speak perl.

What I notice is that, without this patch, the htmldocs contain:

file:///home/willy/kernel/linux/Documentation/output/core-api/mm-api.html#c.folio

Members

flags

    Identical to the page flags.
{unnamed_union}

    anonymous
lru

    Least Recently Used list; tracks how recently this folio was used.
{unnamed_struct}

    anonymous
mlock_count

    Number of times any page in this folio is mlocked.

and that looks terrible.  Looking at the history of scripts/kernel-doc,
this wasn't supposed to happen.

Randy added support in 134fe01bfafa (2006), and there was an explicit
check to not output anything for anon union/struct.  It got reworked
slightly in 5f8c7c98ae38 (2007), but probably still worked the same.
I think it got broken by 151c468b44a8 (2017) which said:

    While here, I removed a unaligned check for !$anon_struct_union.
    This is not needed, as, if $anon_struct_union is not zero,
    $parameterdescs{$param} will be defined.

but I don't really know whether it was some later change to parameterdescs
that really broke it.

diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index 9c084a2ba3b0..64803fe15bd2 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -1540,10 +1540,11 @@ sub push_parameter($$$$$) {
        elsif ($type eq "" && ($param eq "struct" or $param eq "union"))
        # handle unnamed (anonymous) union or struct:
        {
-               $type = $param;
-               $param = "{unnamed_" . $param . "}";
-               $parameterdescs{$param} = "anonymous\n";
+#              $type = $param;
+#              $param = "{unnamed_" . $param . "}";
+#              $parameterdescs{$param} = "anonymous\n";
                $anon_struct_union = 1;
+               return;
        }

        # warn if parameter has no description





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux