* [PATCH v2 0/2] Better handle and document Python needs for Kernel build
@ 2025-07-29 16:43 Mauro Carvalho Chehab
2025-07-29 16:43 ` [PATCH v2 2/2] docs: changes: better document Python needs Mauro Carvalho Chehab
2025-08-11 16:58 ` [PATCH v2 0/2] Better handle and document Python needs for Kernel build Jonathan Corbet
0 siblings, 2 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2025-07-29 16:43 UTC (permalink / raw)
To: Jonathan Corbet, Linux Doc Mailing List
Cc: Mauro Carvalho Chehab, linux-kernel, Akira Yokosawa, workflows
Hi Jon,
It follows the second version of this small series. It contains
missing patches from the python backward-compatibility series.
I dropped support for 2.7 and did some changes at changes.rst
per Akira's request.
They're not urgent, IMO it should be OK to have them merged for 6.17.
The first patch ensures that kernel-doc won't crash with version
3.2 (tested on 3.4, as 3.2 is like an unicorn: docker containers v1
don't run anymore on Fedora, building is broken since at least
Fedora 32, Anaconda doesn't have it anymore).
With this change, on elder versions, it would emit a warning and
do nothing, as the actual code depends on features at 3.6 (f-strings)
and 3.7 (ordered dict).
The second patch changes process/changes.rst. Currently, it makes
one think that Python is optional. While not having python may
work on some cases, it breaks on arm/arm64 with defconfigs.
It also breaks with allyesconfig/almodconfig (at least on x86/x86_64),
with clang (on some archs) and apparently on some other
subsystems that I didn't care enough to identify, as for me,
breaking on arm/arm64 with defconfigs, and on x86/x86_64
with allyesconfig/allmodconfig is enough evidence that this
is mandatory nowadays.
So, remove optional from Python and add a quick description
about where it is required, leaving it open to one's imagination
that it could break with other configs we didn't map.
---
v2: drop support for 2.7, updated a comment and updated changes.rst.
Mauro Carvalho Chehab (2):
docs: kernel-doc: avoid script crash on ancient Python
docs: changes: better document Python needs
Documentation/process/changes.rst | 9 +++++++-
scripts/kernel-doc.py | 34 ++++++++++++++++++++++---------
2 files changed, 32 insertions(+), 11 deletions(-)
--
2.49.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v2 2/2] docs: changes: better document Python needs
2025-07-29 16:43 [PATCH v2 0/2] Better handle and document Python needs for Kernel build Mauro Carvalho Chehab
@ 2025-07-29 16:43 ` Mauro Carvalho Chehab
2025-07-31 3:14 ` Akira Yokosawa
2025-08-04 18:08 ` Rob Herring
2025-08-11 16:58 ` [PATCH v2 0/2] Better handle and document Python needs for Kernel build Jonathan Corbet
1 sibling, 2 replies; 5+ messages in thread
From: Mauro Carvalho Chehab @ 2025-07-29 16:43 UTC (permalink / raw)
To: Jonathan Corbet, Linux Doc Mailing List
Cc: Mauro Carvalho Chehab, linux-kernel, workflows
Python is listed as an optional dependency, but this is not
true, as:
1) arm (multi_v7_defconfig and other defconfigs) and arm64 defconfig
needs it due to DRM_MSM dependencies;
2) CONFIG_LTO_CLANG runs a python script at scripts/Makefile.vmlinux_o;
3) kernel-doc is called during compilation when some DRM options
like CONFIG_DRM_I915_WERROR are enabled;
4) allyesconfig/allmodconfig will enable CONFIG_* dependencies
that needs it;
5) besides DRM, other subsystems seem to have logic calling *.py
scripts.
So, better document that and change the dependency from optional
to mandatory to reflect the current needs.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
---
Documentation/process/changes.rst | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
index bccfa19b45df..4c9088e429c8 100644
--- a/Documentation/process/changes.rst
+++ b/Documentation/process/changes.rst
@@ -61,7 +61,7 @@ Sphinx\ [#f1]_ 3.4.3 sphinx-build --version
GNU tar 1.28 tar --version
gtags (optional) 6.6.5 gtags --version
mkimage (optional) 2017.01 mkimage --version
-Python (optional) 3.9.x python3 --version
+Python 3.9.x python3 --version
GNU AWK (optional) 5.1.0 gawk --version
====================== =============== ========================================
@@ -154,6 +154,13 @@ Perl
You will need perl 5 and the following modules: ``Getopt::Long``,
``Getopt::Std``, ``File::Basename``, and ``File::Find`` to build the kernel.
+Python
+------
+
+Several config options require it: it is required for arm/arm64
+default configs, CONFIG_LTO_CLANG, some DRM optional configs,
+the kernel-doc tool, and docs build (Sphinx), among others.
+
BC
--
--
2.49.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v2 2/2] docs: changes: better document Python needs
2025-07-29 16:43 ` [PATCH v2 2/2] docs: changes: better document Python needs Mauro Carvalho Chehab
@ 2025-07-31 3:14 ` Akira Yokosawa
2025-08-04 18:08 ` Rob Herring
1 sibling, 0 replies; 5+ messages in thread
From: Akira Yokosawa @ 2025-07-31 3:14 UTC (permalink / raw)
To: mchehab+huawei; +Cc: corbet, linux-doc, linux-kernel, workflows
On Tue, 29 Jul 2025 18:43:04 +0200, Mauro Carvalho Chehab wrote:
> Python is listed as an optional dependency, but this is not
> true, as:
>
> 1) arm (multi_v7_defconfig and other defconfigs) and arm64 defconfig
> needs it due to DRM_MSM dependencies;
>
> 2) CONFIG_LTO_CLANG runs a python script at scripts/Makefile.vmlinux_o;
>
> 3) kernel-doc is called during compilation when some DRM options
> like CONFIG_DRM_I915_WERROR are enabled;
>
> 4) allyesconfig/allmodconfig will enable CONFIG_* dependencies
> that needs it;
>
> 5) besides DRM, other subsystems seem to have logic calling *.py
> scripts.
>
OK. This sounds convincing enough.
> So, better document that and change the dependency from optional
> to mandatory to reflect the current needs.
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
> ---
> Documentation/process/changes.rst | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
> index bccfa19b45df..4c9088e429c8 100644
> --- a/Documentation/process/changes.rst
> +++ b/Documentation/process/changes.rst
> @@ -61,7 +61,7 @@ Sphinx\ [#f1]_ 3.4.3 sphinx-build --version
> GNU tar 1.28 tar --version
> gtags (optional) 6.6.5 gtags --version
> mkimage (optional) 2017.01 mkimage --version
> -Python (optional) 3.9.x python3 --version
> +Python 3.9.x python3 --version
> GNU AWK (optional) 5.1.0 gawk --version
> ====================== =============== ========================================
>
> @@ -154,6 +154,13 @@ Perl
> You will need perl 5 and the following modules: ``Getopt::Long``,
> ``Getopt::Std``, ``File::Basename``, and ``File::Find`` to build the kernel.
>
> +Python
> +------
> +
> +Several config options require it: it is required for arm/arm64
> +default configs, CONFIG_LTO_CLANG, some DRM optional configs,
> +the kernel-doc tool, and docs build (Sphinx), among others.
> +
Looks much better. Feel free to add:
Acked-by: Akira Yokosawa <akiyks@gmail.com>
Thanks.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 2/2] docs: changes: better document Python needs
2025-07-29 16:43 ` [PATCH v2 2/2] docs: changes: better document Python needs Mauro Carvalho Chehab
2025-07-31 3:14 ` Akira Yokosawa
@ 2025-08-04 18:08 ` Rob Herring
1 sibling, 0 replies; 5+ messages in thread
From: Rob Herring @ 2025-08-04 18:08 UTC (permalink / raw)
To: Mauro Carvalho Chehab
Cc: Jonathan Corbet, Linux Doc Mailing List, linux-kernel, workflows
On Tue, Jul 29, 2025 at 11:44 AM Mauro Carvalho Chehab
<mchehab+huawei@kernel.org> wrote:
>
> Python is listed as an optional dependency, but this is not
> true, as:
>
> 1) arm (multi_v7_defconfig and other defconfigs) and arm64 defconfig
> needs it due to DRM_MSM dependencies;
>
> 2) CONFIG_LTO_CLANG runs a python script at scripts/Makefile.vmlinux_o;
>
> 3) kernel-doc is called during compilation when some DRM options
> like CONFIG_DRM_I915_WERROR are enabled;
>
> 4) allyesconfig/allmodconfig will enable CONFIG_* dependencies
> that needs it;
>
> 5) besides DRM, other subsystems seem to have logic calling *.py
> scripts.
>
> So, better document that and change the dependency from optional
> to mandatory to reflect the current needs.
>
> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
> ---
> Documentation/process/changes.rst | 9 ++++++++-
> 1 file changed, 8 insertions(+), 1 deletion(-)
DT schema checks requires it too.
Acked-by: Rob Herring (Arm) <robh@kernel.org>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v2 0/2] Better handle and document Python needs for Kernel build
2025-07-29 16:43 [PATCH v2 0/2] Better handle and document Python needs for Kernel build Mauro Carvalho Chehab
2025-07-29 16:43 ` [PATCH v2 2/2] docs: changes: better document Python needs Mauro Carvalho Chehab
@ 2025-08-11 16:58 ` Jonathan Corbet
1 sibling, 0 replies; 5+ messages in thread
From: Jonathan Corbet @ 2025-08-11 16:58 UTC (permalink / raw)
To: Mauro Carvalho Chehab, Linux Doc Mailing List
Cc: Mauro Carvalho Chehab, linux-kernel, Akira Yokosawa, workflows
Mauro Carvalho Chehab <mchehab+huawei@kernel.org> writes:
> Hi Jon,
>
> It follows the second version of this small series. It contains
> missing patches from the python backward-compatibility series.
Applied, thanks.
jon
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-08-11 16:58 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-29 16:43 [PATCH v2 0/2] Better handle and document Python needs for Kernel build Mauro Carvalho Chehab
2025-07-29 16:43 ` [PATCH v2 2/2] docs: changes: better document Python needs Mauro Carvalho Chehab
2025-07-31 3:14 ` Akira Yokosawa
2025-08-04 18:08 ` Rob Herring
2025-08-11 16:58 ` [PATCH v2 0/2] Better handle and document Python needs for Kernel build Jonathan Corbet
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).