| From foo@baz Fri Feb 23 12:01:27 CET 2018 |
| From: Will Deacon <will.deacon@arm.com> |
| Date: Wed, 29 Nov 2017 15:20:03 +0000 |
| Subject: scripts/kernel-doc: Don't fail with status != 0 if error encountered with -none |
| |
| From: Will Deacon <will.deacon@arm.com> |
| |
| |
| [ Upstream commit e814bccbafece52a24e152d2395b5d49eef55841 ] |
| |
| 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> |
| Signed-off-by: Jonathan Corbet <corbet@lwn.net> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| scripts/kernel-doc | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/scripts/kernel-doc |
| +++ b/scripts/kernel-doc |
| @@ -2616,4 +2616,4 @@ if ($verbose && $warnings) { |
| print STDERR "$warnings warnings\n"; |
| } |
| |
| -exit($errors); |
| +exit($output_mode eq "none" ? 0 : $errors); |