On 05/02/2024 03:36, Justin Forbes wrote:
On Sun, Feb 4, 2024 at 7:29 PM Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
On Sun, Feb 04, 2024 at 09:31:48PM +0100, Salvatore Bonaccorso wrote:
On Sun, Feb 04, 2024 at 06:05:05PM +0100, Salvatore Bonaccorso wrote:
On Thu, Feb 01, 2024 at 05:34:25PM +0100, Vegard Nossum wrote:
[...]
I'm guessing maybe a different patch between 6.6 and current mainline is causing 'fname' to always get assigned for the newer versions and thus make the run succeed, in spite of the bug.
Something like the patch below (completely untested) should restore the previous behaviour, but I'm not convinced it's correct.
[...]
Your above change seems to workaround the issue in fact, but need to do a full build yet.
For Debian I'm temporarily reverting from the 6.6.15 upload:
e961f8c6966a ("docs: kernel_feat.py: fix potential command injection")
This is not the best solution, but unbreaks several other builds.
The alternative would be to apply Vegard's workaround or the proper solution for that.
What is the "proper" solution here? Does 6.8-rc3 work? What are we missing to be backported here?
I am not sure what the "proper"fix was, but as I mentioned with 6.6.15, this patch broke the build with 6.6.15, but 6.7.3 and newer were fine. I think the fix came in through another path incidentally, but Vegard mentioned a possible fox for 6.6 kernels. Realistically, Fedora has moved on to 6.7.x now, but I do still test 6.6.x stable rcs and while I reported that 6.6.16 was good, it was only because I saw no regressions from 6.6.15. The docs failure from this patch still exists.
I'm thinking this might be missing from the backport of the stable patch, causing it to break on 6.6.15 (since ia64 was removed in 6.7):
diff --git a/Documentation/arch/ia64/features.rst b/Documentation/arch/ia64/features.rst index d7226fdcf5f8..056838d2ab55 100644 --- a/Documentation/arch/ia64/features.rst +++ b/Documentation/arch/ia64/features.rst @@ -1,3 +1,3 @@ .. SPDX-License-Identifier: GPL-2.0
-.. kernel-feat:: $srctree/Documentation/features ia64 +.. kernel-feat:: features ia64
I also think I understand the kernel_feat.py code a bit better and will submit a proper fix for that -- basically, if it doesn't manage to process any lines from the referenced file (which it won't for ia64 since it literally tries to open a file called $srctree/...) then it calls self.nestedParse() with a non-existent 'fname' and an empty 'lines' -- so the value of the fname parameter is truly unused in the degenerate case, but it's still referencing the undefined 'fname'.
So I'm thinking:
1) the ia64/features.rst patch above for stable (only) to fix the immediate breakage in stable,
2) kernel_feat.py patch for mainline that can trickle down into stable once it's been merged.
Thanks, and sorry for the breakage.
Vegard