Message ID | 1511968805-20651-1-git-send-email-will.deacon@arm.com |
---|---|
State | New |
Headers | show |
Series | [1/3] scripts/kernel-doc: Don't fail with status != 0 if error encountered with -none | expand |
On Wed, 29 Nov 2017 15:20:03 +0000 Will Deacon <will.deacon@arm.com> wrote: > My bisect scripts starting running into build failures when trying to > compile 4.15-rc1 with the builds failing with things like: > > drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c:2078: error: Cannot parse struct or union! > > The line in question is actually just a #define, but after some digging > it turns out that my scripts pass W=1 and since commit 3a025e1d1c2ea > ("Add optional check for bad kernel-doc comments") that results in > kernel-doc running on each source file. The file in question has a > badly formatted comment immediately before the #define: > > /** > * struct brcmf_skbuff_cb reserves first two bytes in sk_buff::cb for > * bus layer usage. > */ > > which causes the regex in dump_struct to fail (lack of braces following > struct declaration) and kernel-doc returns 1, which causes the build > to fail. > > Fix the issue by always returning 0 from kernel-doc when invoked with > -none. It successfully generates no documentation, and prints out any > issues. That seems like a worthy fix. I can take this one and ship it up with a few other docs fixes in the near future, thanks. jon
On Wed, Nov 29, 2017 at 09:12:14AM -0700, Jonathan Corbet wrote: > On Wed, 29 Nov 2017 15:20:03 +0000 > Will Deacon <will.deacon@arm.com> wrote: > > > My bisect scripts starting running into build failures when trying to > > compile 4.15-rc1 with the builds failing with things like: > > > > drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c:2078: error: Cannot parse struct or union! > > > > The line in question is actually just a #define, but after some digging > > it turns out that my scripts pass W=1 and since commit 3a025e1d1c2ea > > ("Add optional check for bad kernel-doc comments") that results in > > kernel-doc running on each source file. The file in question has a > > badly formatted comment immediately before the #define: > > > > /** > > * struct brcmf_skbuff_cb reserves first two bytes in sk_buff::cb for > > * bus layer usage. > > */ > > > > which causes the regex in dump_struct to fail (lack of braces following > > struct declaration) and kernel-doc returns 1, which causes the build > > to fail. > > > > Fix the issue by always returning 0 from kernel-doc when invoked with > > -none. It successfully generates no documentation, and prints out any > > issues. > > That seems like a worthy fix. I can take this one and ship it up with a > few other docs fixes in the near future, thanks. Brill, cheers Jon. It had me extremely confused for a while until I figured out the warning wasn't coming from GCC :) Will
diff --git a/scripts/kernel-doc b/scripts/kernel-doc index bd29a92b4b48..df0f045a9a89 100755 --- a/scripts/kernel-doc +++ b/scripts/kernel-doc @@ -3248,4 +3248,4 @@ if ($verbose && $warnings) { print STDERR "$warnings warnings\n"; } -exit($errors); +exit($output_mode eq "none" ? 0 : $errors);
My bisect scripts starting running into build failures when trying to compile 4.15-rc1 with the builds failing with things like: drivers/net/wireless/broadcom/brcm80211/brcmfmac/sdio.c:2078: error: Cannot parse struct or union! The line in question is actually just a #define, but after some digging it turns out that my scripts pass W=1 and since commit 3a025e1d1c2ea ("Add optional check for bad kernel-doc comments") that results in kernel-doc running on each source file. The file in question has a badly formatted comment immediately before the #define: /** * struct brcmf_skbuff_cb reserves first two bytes in sk_buff::cb for * bus layer usage. */ which causes the regex in dump_struct to fail (lack of braces following struct declaration) and kernel-doc returns 1, which causes the build to fail. Fix the issue by always returning 0 from kernel-doc when invoked with -none. It successfully generates no documentation, and prints out any issues. Cc: Matthew Wilcox <mawilcox@microsoft.com> Cc: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Will Deacon <will.deacon@arm.com> --- scripts/kernel-doc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.1.4