Bug#1064035: [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.
- To: Jonathan Corbet <corbet@lwn.net>
- Cc: regressions@lists.linux.dev, stable@vger.kernel.org, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Ben Hutchings <ben@decadent.org.uk>, Kees Cook <keescook@chromium.org>, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, Aditya Srivastava <yashsri421@gmail.com>, 1064035@bugs.debian.org
- Subject: Bug#1064035: [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.
- From: Salvatore Bonaccorso <carnil@debian.org>
- Date: Mon, 4 Mar 2024 22:41:50 +0100
- Message-id: <[🔎] ZeZAHnzlmZoAhkqW@eldamar.lan>
- Reply-to: Salvatore Bonaccorso <carnil@debian.org>, 1064035@bugs.debian.org
- In-reply-to: <[🔎] 874jdlsqyy.fsf@meer.lwn.net>
- References: <[🔎] ZeHKjjPGoyv_b2Tg@eldamar.lan> <[🔎] 877ciiw1yp.fsf@meer.lwn.net> <[🔎] ZeYoZNJaZ4ejONTZ@eldamar.lan> <[🔎] 874jdlsqyy.fsf@meer.lwn.net> <170804804866.1297002.5520099542077412076.reportbug@deadeye.wl.decadent.org.uk>
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
>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: [🔎] ZeHKjjPGoyv_b2Tg@eldamar.lan/T/#u">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
Reply to: