* [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236.
@ 2024-03-01 12:31 Salvatore Bonaccorso
2024-03-04 13:27 ` Greg Kroah-Hartman
2024-03-04 13:39 ` Jonathan Corbet
0 siblings, 2 replies; 8+ messages in thread
From: Salvatore Bonaccorso @ 2024-03-01 12:31 UTC (permalink / raw)
To: regressions, stable
Cc: Greg Kroah-Hartman, Ben Hutchings, Kees Cook, Jonathan Corbet,
linux-doc, linux-kernel, Aditya Srivastava, 1064035
Hi,
Ben Hutchings reported in https://bugs.debian.org/1064035 a problem
with the kernel-doc builds once 3080ea5553cc ("stddef: Introduce
DECLARE_FLEX_ARRAY() helper") got applied in 5.10.210 (as
prerequisite of another fix in 5.10.y):
> The backport of commit 3080ea5553cc "stddef: Introduce
> DECLARE_FLEX_ARRAY() helper" modified scripts/kernel-doc and
> introduced a syntax error:
>
> Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236.
> Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236.
> Execution of ./scripts/kernel-doc aborted due to compilation errors.
>
> This doesn't stop the documentation build process, but causes the
> documentation that should be extracted by kernel-doc to be missing
> from linux-doc-5.10.
>
> We should be able to fix this by eithering backport commit
> e86bdb24375a "scripts: kernel-doc: reduce repeated regex expressions
> into variables" or replacing /$args/ with /([^,)]+)/.
>
> Ben.
What would be prefered here from stable maintainers point of view?
AFAICS e86bdb24375a ("scripts: kernel-doc: reduce repeated regex
expressions into variables") won't apply cleanly and needs some
refactoring. The alternative pointed out by Ben would be to replace
the /$args/ with /([^,)]+)/.
# 5.10.y specific regression
#regzbot introduced: 443b16ee3d9ce0a3ece0e3526a5af883e5b16eaf
#regzbot link: https://bugs.debian.org/1064035
Regards,
Salvatore
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. 2024-03-01 12:31 [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236 Salvatore Bonaccorso @ 2024-03-04 13:27 ` Greg Kroah-Hartman 2024-03-04 13:39 ` Jonathan Corbet 1 sibling, 0 replies; 8+ messages in thread From: Greg Kroah-Hartman @ 2024-03-04 13:27 UTC (permalink / raw) To: Salvatore Bonaccorso Cc: regressions, stable, Ben Hutchings, Kees Cook, Jonathan Corbet, linux-doc, linux-kernel, Aditya Srivastava, 1064035 On Fri, Mar 01, 2024 at 01:31:10PM +0100, Salvatore Bonaccorso wrote: > Hi, > > Ben Hutchings reported in https://bugs.debian.org/1064035 a problem > with the kernel-doc builds once 3080ea5553cc ("stddef: Introduce > DECLARE_FLEX_ARRAY() helper") got applied in 5.10.210 (as > prerequisite of another fix in 5.10.y): > > > The backport of commit 3080ea5553cc "stddef: Introduce > > DECLARE_FLEX_ARRAY() helper" modified scripts/kernel-doc and > > introduced a syntax error: > > > > Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. > > Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. > > Execution of ./scripts/kernel-doc aborted due to compilation errors. > > > > This doesn't stop the documentation build process, but causes the > > documentation that should be extracted by kernel-doc to be missing > > from linux-doc-5.10. > > > > We should be able to fix this by eithering backport commit > > e86bdb24375a "scripts: kernel-doc: reduce repeated regex expressions > > into variables" or replacing /$args/ with /([^,)]+)/. > > > > Ben. > > What would be prefered here from stable maintainers point of view? > AFAICS e86bdb24375a ("scripts: kernel-doc: reduce repeated regex > expressions into variables") won't apply cleanly and needs some > refactoring. The alternative pointed out by Ben would be to replace > the /$args/ with /([^,)]+)/. I'll take a patch that does either, your call :) thanks, greg k-h ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. 2024-03-01 12:31 [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236 Salvatore Bonaccorso 2024-03-04 13:27 ` Greg Kroah-Hartman @ 2024-03-04 13:39 ` Jonathan Corbet 2024-03-04 20:00 ` Salvatore Bonaccorso 1 sibling, 1 reply; 8+ messages in thread From: Jonathan Corbet @ 2024-03-04 13:39 UTC (permalink / raw) To: Salvatore Bonaccorso, regressions, stable Cc: Greg Kroah-Hartman, Ben Hutchings, Kees Cook, linux-doc, linux-kernel, Aditya Srivastava, 1064035 Salvatore Bonaccorso <carnil@debian.org> writes: > Hi, > > Ben Hutchings reported in https://bugs.debian.org/1064035 a problem > with the kernel-doc builds once 3080ea5553cc ("stddef: Introduce > DECLARE_FLEX_ARRAY() helper") got applied in 5.10.210 (as > prerequisite of another fix in 5.10.y): > >> The backport of commit 3080ea5553cc "stddef: Introduce >> DECLARE_FLEX_ARRAY() helper" modified scripts/kernel-doc and >> introduced a syntax error: >> >> Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. >> Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. >> Execution of ./scripts/kernel-doc aborted due to compilation errors. >> >> This doesn't stop the documentation build process, but causes the >> documentation that should be extracted by kernel-doc to be missing >> from linux-doc-5.10. >> >> We should be able to fix this by eithering backport commit >> e86bdb24375a "scripts: kernel-doc: reduce repeated regex expressions >> into variables" or replacing /$args/ with /([^,)]+)/. >> >> Ben. > > What would be prefered here from stable maintainers point of view? > AFAICS e86bdb24375a ("scripts: kernel-doc: reduce repeated regex > expressions into variables") won't apply cleanly and needs some > refactoring. The alternative pointed out by Ben would be to replace > the /$args/ with /([^,)]+)/. Hmm...this is the first I see of any of this... The latter fix seems like the more straightforward of the two. The only concern might be if there are other kernel-doc backports that might run afoul of the same problem, hopefully not. But this makes me wonder if there are other stable kernels that are affected as well. I guess that, despite all of the testing being done on stable updates, nobody is testing the docs build? Thanks, jon ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. 2024-03-04 13:39 ` Jonathan Corbet @ 2024-03-04 20:00 ` Salvatore Bonaccorso 2024-03-04 20:05 ` Jonathan Corbet 0 siblings, 1 reply; 8+ messages in thread From: Salvatore Bonaccorso @ 2024-03-04 20:00 UTC (permalink / raw) To: Jonathan Corbet Cc: regressions, stable, Greg Kroah-Hartman, Ben Hutchings, Kees Cook, linux-doc, linux-kernel, Aditya Srivastava, 1064035 Hi Jonathan, On Mon, Mar 04, 2024 at 06:39:26AM -0700, Jonathan Corbet wrote: > Salvatore Bonaccorso <carnil@debian.org> writes: > > > Hi, > > > > Ben Hutchings reported in https://bugs.debian.org/1064035 a problem > > with the kernel-doc builds once 3080ea5553cc ("stddef: Introduce > > DECLARE_FLEX_ARRAY() helper") got applied in 5.10.210 (as > > prerequisite of another fix in 5.10.y): > > > >> The backport of commit 3080ea5553cc "stddef: Introduce > >> DECLARE_FLEX_ARRAY() helper" modified scripts/kernel-doc and > >> introduced a syntax error: > >> > >> Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. > >> Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. > >> Execution of ./scripts/kernel-doc aborted due to compilation errors. > >> > >> This doesn't stop the documentation build process, but causes the > >> documentation that should be extracted by kernel-doc to be missing > >> from linux-doc-5.10. > >> > >> We should be able to fix this by eithering backport commit > >> e86bdb24375a "scripts: kernel-doc: reduce repeated regex expressions > >> into variables" or replacing /$args/ with /([^,)]+)/. > >> > >> Ben. > > > > What would be prefered here from stable maintainers point of view? > > AFAICS e86bdb24375a ("scripts: kernel-doc: reduce repeated regex > > expressions into variables") won't apply cleanly and needs some > > refactoring. The alternative pointed out by Ben would be to replace > > the /$args/ with /([^,)]+)/. > > Hmm...this is the first I see of any of this... > > The latter fix seems like the more straightforward of the two. The only > concern might be if there are other kernel-doc backports that might run > afoul of the same problem, hopefully not. Ok. In the sprit of the stable series rules we might try the later and if it's not feasible pick the first variant? > But this makes me wonder if there are other stable kernels that are > affected as well. I guess that, despite all of the testing being done > on stable updates, nobody is testing the docs build? Only 5.10.y is affected AFAICT, and the reaso nis that the cherry-pick of ("stddef: Introduce DECLARE_FLEX_ARRAY() helper") in 5.10.y (as requisite of the smb fixes) requires as well e86bdb24375a ("scripts: kernel-doc: reduce repeated regex expressions into variables"). 3080ea5553cc ("stddef: Introduce DECLARE_FLEX_ARRAY() helper") is in 5.10.210, 5.15.54 and 5.16-rc1. e86bdb24375a ("scripts: kernel-doc: reduce repeated regex expressions into variables") is in 5.14-rc1. So it's covered for the later series, but causes problems in the 5.10.y. Regards, Salvatore ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. 2024-03-04 20:00 ` Salvatore Bonaccorso @ 2024-03-04 20:05 ` Jonathan Corbet 2024-03-04 21:41 ` Salvatore Bonaccorso 0 siblings, 1 reply; 8+ messages in thread From: Jonathan Corbet @ 2024-03-04 20:05 UTC (permalink / raw) To: Salvatore Bonaccorso Cc: regressions, stable, Greg Kroah-Hartman, Ben Hutchings, Kees Cook, linux-doc, linux-kernel, Aditya Srivastava, 1064035 Salvatore Bonaccorso <carnil@debian.org> writes: > Ok. In the sprit of the stable series rules we might try the later and > if it's not feasible pick the first variant? Well, "the spirit of the stable series" is one of Greg's titles, and he said either was good...:) jon ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. 2024-03-04 20:05 ` Jonathan Corbet @ 2024-03-04 21:41 ` Salvatore Bonaccorso 2024-03-05 7:46 ` Greg Kroah-Hartman 0 siblings, 1 reply; 8+ messages in thread From: Salvatore Bonaccorso @ 2024-03-04 21:41 UTC (permalink / raw) To: Jonathan Corbet Cc: regressions, stable, Greg Kroah-Hartman, Ben Hutchings, Kees Cook, linux-doc, linux-kernel, Aditya Srivastava, 1064035 [-- Attachment #1: Type: text/plain, Size: 626 bytes --] Hi, On Mon, Mar 04, 2024 at 01:05:09PM -0700, Jonathan Corbet wrote: > Salvatore Bonaccorso <carnil@debian.org> writes: > > > Ok. In the sprit of the stable series rules we might try the later and > > if it's not feasible pick the first variant? > > Well, "the spirit of the stable series" is one of Greg's titles, and he > said either was good...:) here we go. Please let me know if you need anything changed in the commit message to describe the situation better. Greg, in the Fixes tag I added the 5.10.y commit as the issue is specific to the 5.10.y series. Is this the correct form to note this? Regards, Salvatore [-- Attachment #2: 0001-scripts-kernel-doc-Fix-syntax-error-due-to-undeclare.patch --] [-- Type: text/x-diff, Size: 2095 bytes --] From ccddb9f4915f0dbf28fb72b6ff4c04977978ed3d Mon Sep 17 00:00:00 2001 From: Salvatore Bonaccorso <carnil@debian.org> Date: Mon, 4 Mar 2024 22:24:12 +0100 Subject: [PATCH] scripts: kernel-doc: Fix syntax error due to undeclared args variable The backport of commit 3080ea5553cc ("stddef: Introduce DECLARE_FLEX_ARRAY() helper") to 5.10.y (as a prerequisite of another fix) modified scripts/kernel-doc and introduced a syntax error: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. Execution of ./scripts/kernel-doc aborted due to compilation errors. Note: The issue could be fixed in the 5.10.y series as well by backporting e86bdb24375a ("scripts: kernel-doc: reduce repeated regex expressions into variables") but just replacing the undeclared args back to ([^,)]+) was the most straightforward approach. The issue is specific to the backport to the 5.10.y series. Thus there is as well no upstream commit for this change. Fixes: 443b16ee3d9c ("stddef: Introduce DECLARE_FLEX_ARRAY() helper") # 5.10.y Reported-by: Ben Hutchings <ben@decadent.org.uk> Link: https://lore.kernel.org/regressions/ZeHKjjPGoyv_b2Tg@eldamar.lan/T/#u Link: https://bugs.debian.org/1064035 Signed-off-by: Salvatore Bonaccorso <carnil@debian.org> --- scripts/kernel-doc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/kernel-doc b/scripts/kernel-doc index 7a04d4c05326..8e3257f1ea2c 100755 --- a/scripts/kernel-doc +++ b/scripts/kernel-doc @@ -1233,7 +1233,7 @@ sub dump_struct($$) { # replace DECLARE_KFIFO_PTR $members =~ s/DECLARE_KFIFO_PTR\s*\(([^,)]+),\s*([^,)]+)\)/$2 \*$1/gos; # replace DECLARE_FLEX_ARRAY - $members =~ s/(?:__)?DECLARE_FLEX_ARRAY\s*\($args,\s*$args\)/$1 $2\[\]/gos; + $members =~ s/(?:__)?DECLARE_FLEX_ARRAY\s*\(([^,)]+),\s*([^,)]+)\)/$1 $2\[\]/gos; my $declaration = $members; # Split nested struct/union elements as newer ones -- 2.43.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. 2024-03-04 21:41 ` Salvatore Bonaccorso @ 2024-03-05 7:46 ` Greg Kroah-Hartman 2024-03-27 13:44 ` Greg Kroah-Hartman 0 siblings, 1 reply; 8+ messages in thread From: Greg Kroah-Hartman @ 2024-03-05 7:46 UTC (permalink / raw) To: Salvatore Bonaccorso Cc: Jonathan Corbet, regressions, stable, Ben Hutchings, Kees Cook, linux-doc, linux-kernel, Aditya Srivastava, 1064035 On Mon, Mar 04, 2024 at 10:41:50PM +0100, Salvatore Bonaccorso wrote: > Hi, > > On Mon, Mar 04, 2024 at 01:05:09PM -0700, Jonathan Corbet wrote: > > Salvatore Bonaccorso <carnil@debian.org> writes: > > > > > Ok. In the sprit of the stable series rules we might try the later and > > > if it's not feasible pick the first variant? > > > > Well, "the spirit of the stable series" is one of Greg's titles, and he > > said either was good...:) > > here we go. Please let me know if you need anything changed in the > commit message to describe the situation better. > > Greg, in the Fixes tag I added the 5.10.y commit as the issue is > specific to the 5.10.y series. Is this the correct form to note this? Looks good, I'll queue this up after the next round of releases goes out, thanks for the patch! greg k-h ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236. 2024-03-05 7:46 ` Greg Kroah-Hartman @ 2024-03-27 13:44 ` Greg Kroah-Hartman 0 siblings, 0 replies; 8+ messages in thread From: Greg Kroah-Hartman @ 2024-03-27 13:44 UTC (permalink / raw) To: Salvatore Bonaccorso Cc: Jonathan Corbet, regressions, stable, Ben Hutchings, Kees Cook, linux-doc, linux-kernel, Aditya Srivastava, 1064035 On Tue, Mar 05, 2024 at 07:46:59AM +0000, Greg Kroah-Hartman wrote: > On Mon, Mar 04, 2024 at 10:41:50PM +0100, Salvatore Bonaccorso wrote: > > Hi, > > > > On Mon, Mar 04, 2024 at 01:05:09PM -0700, Jonathan Corbet wrote: > > > Salvatore Bonaccorso <carnil@debian.org> writes: > > > > > > > Ok. In the sprit of the stable series rules we might try the later and > > > > if it's not feasible pick the first variant? > > > > > > Well, "the spirit of the stable series" is one of Greg's titles, and he > > > said either was good...:) > > > > here we go. Please let me know if you need anything changed in the > > commit message to describe the situation better. > > > > Greg, in the Fixes tag I added the 5.10.y commit as the issue is > > specific to the 5.10.y series. Is this the correct form to note this? > > Looks good, I'll queue this up after the next round of releases goes > out, thanks for the patch! Now finally queued up, sorry for the delay. greg k-h ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-03-27 13:44 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-03-01 12:31 [regression 5.10.y] linux-doc builds: Global symbol "$args" requires explicit package name (did you forget to declare "my $args"?) at ./scripts/kernel-doc line 1236 Salvatore Bonaccorso 2024-03-04 13:27 ` Greg Kroah-Hartman 2024-03-04 13:39 ` Jonathan Corbet 2024-03-04 20:00 ` Salvatore Bonaccorso 2024-03-04 20:05 ` Jonathan Corbet 2024-03-04 21:41 ` Salvatore Bonaccorso 2024-03-05 7:46 ` Greg Kroah-Hartman 2024-03-27 13:44 ` Greg Kroah-Hartman
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).