[PATCH] MAINTAINERS: Associate GDB scripts with their subsystems

Florian Fainelli posted 1 patch 3 months, 2 weeks ago
MAINTAINERS | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
[PATCH] MAINTAINERS: Associate GDB scripts with their subsystems
Posted by Florian Fainelli 3 months, 2 weeks ago
The GDB scripts under scripts/gdb/linux are very useful for inspecting
kernel data structures however they depend upon the internal APIs and
data structures which are updated without much consideration for those
scripts. This results in a near constant catching up with fixing the
scripts so they continue to work.

Associate the GDB scripts with their subsystems in the hope that they
get more love and attention.

Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
---
 MAINTAINERS | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index efb51ee92683..ffd08e63cd20 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -5979,6 +5979,7 @@ F:	include/dt-bindings/clock/
 F:	include/linux/clk-pr*
 F:	include/linux/clk/
 F:	include/linux/of_clk.h
+F:	scripts/gdb/linux/clk.py
 F:	rust/helpers/clk.c
 F:	rust/kernel/clk.rs
 X:	drivers/clk/clkdev.c
@@ -7374,6 +7375,7 @@ F:	rust/kernel/faux.rs
 F:	rust/kernel/platform.rs
 F:	samples/rust/rust_driver_platform.rs
 F:	samples/rust/rust_driver_faux.rs
+F:	scripts/gdb/linux/device.py
 
 DRIVERS FOR OMAP ADAPTIVE VOLTAGE SCALING (AVS)
 M:	Nishanth Menon <nm@ti.com>
@@ -10119,6 +10121,7 @@ F:	Documentation/devicetree/bindings/power/power?domain*
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm.git
 F:	drivers/pmdomain/
 F:	include/linux/pm_domain.h
+F:	scripts/gdb/linux/genpd.py
 
 GENERIC RADIX TREE
 M:	Kent Overstreet <kent.overstreet@linux.dev>
@@ -10126,6 +10129,7 @@ S:	Supported
 C:	irc://irc.oftc.net/bcache
 F:	include/linux/generic-radix-tree.h
 F:	lib/generic-radix-tree.c
+F:	scripts/gdb/linux/radixtree.py
 
 GENERIC RESISTIVE TOUCHSCREEN ADC DRIVER
 M:	Eugen Hristev <eugen.hristev@microchip.com>
@@ -12750,6 +12754,7 @@ F:	include/linux/irqnr.h
 F:	include/linux/irqreturn.h
 F:	kernel/irq/
 F:	lib/group_cpus.c
+F:	scripts/gdb/linux/interrupts.py
 
 IRQCHIP DRIVERS
 M:	Thomas Gleixner <tglx@linutronix.de>
@@ -12985,6 +12990,7 @@ F:	include/linux/kasan*.h
 F:	lib/Kconfig.kasan
 F:	mm/kasan/
 F:	scripts/Makefile.kasan
+F:	scripts/gdb/linux/kasan.py
 
 KCONFIG
 M:	Masahiro Yamada <masahiroy@kernel.org>
@@ -14464,6 +14470,7 @@ F:	include/linux/maple_tree.h
 F:	include/trace/events/maple_tree.h
 F:	lib/maple_tree.c
 F:	lib/test_maple_tree.c
+F:	scripts/gdb/linux/mapletree.py
 F:	tools/testing/radix-tree/maple.c
 F:	tools/testing/shared/linux/maple_tree.h
 
@@ -15748,6 +15755,10 @@ F:	include/linux/mmu_notifier.h
 F:	include/linux/pagewalk.h
 F:	include/trace/events/ksm.h
 F:	mm/
+F:	scripts/gdb/linux/mm.py
+F:	scripts/gdb/linux/page_owner.py
+F:	scripts/gdb/linux/pgtable.py
+F:	scripts/gdb/linux/slab.py
 F:	tools/mm/
 F:	tools/testing/selftests/mm/
 N:	include/linux/page[-_]*
@@ -16809,6 +16820,7 @@ F:	include/linux/module*.h
 F:	kernel/module/
 F:	lib/test_kmod.c
 F:	lib/tests/module/
+F:	scripts/gdb/linux/modules.py
 F:	scripts/module*
 F:	tools/testing/selftests/kmod/
 F:	tools/testing/selftests/module/
@@ -19430,6 +19442,7 @@ F:	arch/*/include/asm/percpu.h
 F:	include/linux/percpu*.h
 F:	lib/percpu*.c
 F:	mm/percpu*.c
+F:	scripts/gdb/linux/cpus.py
 
 PER-TASK DELAY ACCOUNTING
 M:	Balbir Singh <bsingharora@gmail.com>
@@ -19771,6 +19784,7 @@ F:	include/trace/events/timer*
 F:	kernel/time/itimer.c
 F:	kernel/time/posix-*
 F:	kernel/time/namespace.c
+F:	scripts/gdb/linux/timerlist.py
 
 POWER MANAGEMENT CORE
 M:	"Rafael J. Wysocki" <rafael@kernel.org>
@@ -19886,6 +19900,7 @@ S:	Maintained
 T:	git git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux.git
 F:	include/linux/printk.h
 F:	kernel/printk/
+F:	scripts/gdb/linux/dmesg.py
 
 PRINTK INDEXING
 R:	Chris Down <chris@chrisdown.name>
@@ -19901,6 +19916,7 @@ S:	Maintained
 F:	Documentation/filesystems/proc.rst
 F:	fs/proc/
 F:	include/linux/proc_fs.h
+F:	scripts/gdb/linux/proc.py
 F:	tools/testing/selftests/proc/
 
 PROC SYSCTL
@@ -26440,6 +26456,7 @@ T:	git git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
 F:	include/linux/vmalloc.h
 F:	mm/vmalloc.c
 F:	lib/test_vmalloc.c
+F:	scripts/gdb/linux/vmalloc.py
 
 VME SUBSYSTEM
 L:	linux-kernel@vger.kernel.org
@@ -26949,6 +26966,7 @@ F:	include/linux/xarray.h
 F:	lib/idr.c
 F:	lib/test_xarray.c
 F:	lib/xarray.c
+F:	scripts/gdb/linux/xarray.py
 F:	tools/testing/radix-tree
 
 XARRAY API [RUST]
-- 
2.43.0
Re: [PATCH] MAINTAINERS: Associate GDB scripts with their subsystems
Posted by Jan Kiszka 3 months, 2 weeks ago
On 25.06.25 19:52, Florian Fainelli wrote:
> The GDB scripts under scripts/gdb/linux are very useful for inspecting
> kernel data structures however they depend upon the internal APIs and
> data structures which are updated without much consideration for those
> scripts. This results in a near constant catching up with fixing the
> scripts so they continue to work.
> 
> Associate the GDB scripts with their subsystems in the hope that they
> get more love and attention.
> 
> Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
> ---
>  MAINTAINERS | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index efb51ee92683..ffd08e63cd20 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -5979,6 +5979,7 @@ F:	include/dt-bindings/clock/
>  F:	include/linux/clk-pr*
>  F:	include/linux/clk/
>  F:	include/linux/of_clk.h
> +F:	scripts/gdb/linux/clk.py
>  F:	rust/helpers/clk.c
>  F:	rust/kernel/clk.rs
>  X:	drivers/clk/clkdev.c
> @@ -7374,6 +7375,7 @@ F:	rust/kernel/faux.rs
>  F:	rust/kernel/platform.rs
>  F:	samples/rust/rust_driver_platform.rs
>  F:	samples/rust/rust_driver_faux.rs
> +F:	scripts/gdb/linux/device.py
>  
>  DRIVERS FOR OMAP ADAPTIVE VOLTAGE SCALING (AVS)
>  M:	Nishanth Menon <nm@ti.com>
> @@ -10119,6 +10121,7 @@ F:	Documentation/devicetree/bindings/power/power?domain*
>  T:	git git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/linux-pm.git
>  F:	drivers/pmdomain/
>  F:	include/linux/pm_domain.h
> +F:	scripts/gdb/linux/genpd.py
>  
>  GENERIC RADIX TREE
>  M:	Kent Overstreet <kent.overstreet@linux.dev>
> @@ -10126,6 +10129,7 @@ S:	Supported
>  C:	irc://irc.oftc.net/bcache
>  F:	include/linux/generic-radix-tree.h
>  F:	lib/generic-radix-tree.c
> +F:	scripts/gdb/linux/radixtree.py
>  
>  GENERIC RESISTIVE TOUCHSCREEN ADC DRIVER
>  M:	Eugen Hristev <eugen.hristev@microchip.com>
> @@ -12750,6 +12754,7 @@ F:	include/linux/irqnr.h
>  F:	include/linux/irqreturn.h
>  F:	kernel/irq/
>  F:	lib/group_cpus.c
> +F:	scripts/gdb/linux/interrupts.py
>  
>  IRQCHIP DRIVERS
>  M:	Thomas Gleixner <tglx@linutronix.de>
> @@ -12985,6 +12990,7 @@ F:	include/linux/kasan*.h
>  F:	lib/Kconfig.kasan
>  F:	mm/kasan/
>  F:	scripts/Makefile.kasan
> +F:	scripts/gdb/linux/kasan.py
>  
>  KCONFIG
>  M:	Masahiro Yamada <masahiroy@kernel.org>
> @@ -14464,6 +14470,7 @@ F:	include/linux/maple_tree.h
>  F:	include/trace/events/maple_tree.h
>  F:	lib/maple_tree.c
>  F:	lib/test_maple_tree.c
> +F:	scripts/gdb/linux/mapletree.py
>  F:	tools/testing/radix-tree/maple.c
>  F:	tools/testing/shared/linux/maple_tree.h
>  
> @@ -15748,6 +15755,10 @@ F:	include/linux/mmu_notifier.h
>  F:	include/linux/pagewalk.h
>  F:	include/trace/events/ksm.h
>  F:	mm/
> +F:	scripts/gdb/linux/mm.py
> +F:	scripts/gdb/linux/page_owner.py
> +F:	scripts/gdb/linux/pgtable.py
> +F:	scripts/gdb/linux/slab.py
>  F:	tools/mm/
>  F:	tools/testing/selftests/mm/
>  N:	include/linux/page[-_]*
> @@ -16809,6 +16820,7 @@ F:	include/linux/module*.h
>  F:	kernel/module/
>  F:	lib/test_kmod.c
>  F:	lib/tests/module/
> +F:	scripts/gdb/linux/modules.py
>  F:	scripts/module*
>  F:	tools/testing/selftests/kmod/
>  F:	tools/testing/selftests/module/
> @@ -19430,6 +19442,7 @@ F:	arch/*/include/asm/percpu.h
>  F:	include/linux/percpu*.h
>  F:	lib/percpu*.c
>  F:	mm/percpu*.c
> +F:	scripts/gdb/linux/cpus.py
>  
>  PER-TASK DELAY ACCOUNTING
>  M:	Balbir Singh <bsingharora@gmail.com>
> @@ -19771,6 +19784,7 @@ F:	include/trace/events/timer*
>  F:	kernel/time/itimer.c
>  F:	kernel/time/posix-*
>  F:	kernel/time/namespace.c
> +F:	scripts/gdb/linux/timerlist.py
>  
>  POWER MANAGEMENT CORE
>  M:	"Rafael J. Wysocki" <rafael@kernel.org>
> @@ -19886,6 +19900,7 @@ S:	Maintained
>  T:	git git://git.kernel.org/pub/scm/linux/kernel/git/printk/linux.git
>  F:	include/linux/printk.h
>  F:	kernel/printk/
> +F:	scripts/gdb/linux/dmesg.py
>  
>  PRINTK INDEXING
>  R:	Chris Down <chris@chrisdown.name>
> @@ -19901,6 +19916,7 @@ S:	Maintained
>  F:	Documentation/filesystems/proc.rst
>  F:	fs/proc/
>  F:	include/linux/proc_fs.h
> +F:	scripts/gdb/linux/proc.py
>  F:	tools/testing/selftests/proc/
>  
>  PROC SYSCTL
> @@ -26440,6 +26456,7 @@ T:	git git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
>  F:	include/linux/vmalloc.h
>  F:	mm/vmalloc.c
>  F:	lib/test_vmalloc.c
> +F:	scripts/gdb/linux/vmalloc.py
>  
>  VME SUBSYSTEM
>  L:	linux-kernel@vger.kernel.org
> @@ -26949,6 +26966,7 @@ F:	include/linux/xarray.h
>  F:	lib/idr.c
>  F:	lib/test_xarray.c
>  F:	lib/xarray.c
> +F:	scripts/gdb/linux/xarray.py
>  F:	tools/testing/radix-tree
>  
>  XARRAY API [RUST]

I will surely support any proposal that helps connecting the scripts
with subsystems they address. However, you should likely break up this
one here into per-subsystem patches and address each affected
maintainer. They should have a chance to accept or reject this potential
extension of their responsibility.

Jan

-- 
Siemens AG, Foundational Technologies
Linux Expert Center
Re: [PATCH] MAINTAINERS: Associate GDB scripts with their subsystems
Posted by Andrew Morton 3 months, 2 weeks ago
On Wed, 25 Jun 2025 21:38:20 +0200 Jan Kiszka <jan.kiszka@siemens.com> wrote:

> On 25.06.25 19:52, Florian Fainelli wrote:
> > The GDB scripts under scripts/gdb/linux are very useful for inspecting
> > kernel data structures however they depend upon the internal APIs and
> > data structures which are updated without much consideration for those
> > scripts. This results in a near constant catching up with fixing the
> > scripts so they continue to work.
> > 
> > Associate the GDB scripts with their subsystems in the hope that they
> > get more love and attention.
> > 
> 
> ...
>
> I will surely support any proposal that helps connecting the scripts
> with subsystems they address. However, you should likely break up this
> one here into per-subsystem patches and address each affected
> maintainer. They should have a chance to accept or reject this potential
> extension of their responsibility.

I agree - this proposal doesn't seem very practical, really.

It might actually be harmful - if someone has an issue with a gdb script
they'll report that to the subsystem maintainer rather than to the GDB
script maintainers who are better equipped to address the issue.

And I'm not sure there's really a problem to fix here.  I'm seeing 13
commits to scripts/gdb this year and afaict only one (e0349c46cb4f
("scripts/gdb/linux/symbols.py: address changes to module_sect_attrs"))
looks like it is fixing up such a problem.
Re: [PATCH] MAINTAINERS: Associate GDB scripts with their subsystems
Posted by Florian Fainelli 3 months, 2 weeks ago
On 6/25/25 13:22, Andrew Morton wrote:
> On Wed, 25 Jun 2025 21:38:20 +0200 Jan Kiszka <jan.kiszka@siemens.com> wrote:
> 
>> On 25.06.25 19:52, Florian Fainelli wrote:
>>> The GDB scripts under scripts/gdb/linux are very useful for inspecting
>>> kernel data structures however they depend upon the internal APIs and
>>> data structures which are updated without much consideration for those
>>> scripts. This results in a near constant catching up with fixing the
>>> scripts so they continue to work.
>>>
>>> Associate the GDB scripts with their subsystems in the hope that they
>>> get more love and attention.
>>>
>>
>> ...
>>
>> I will surely support any proposal that helps connecting the scripts
>> with subsystems they address. However, you should likely break up this
>> one here into per-subsystem patches and address each affected
>> maintainer. They should have a chance to accept or reject this potential
>> extension of their responsibility.
> 
> I agree - this proposal doesn't seem very practical, really.

Yes, that's a good point it should be on a per-subsystem basis to decide 
whether they are willing to take on the maintenance, if nothing else the 
reporting.

> 
> It might actually be harmful - if someone has an issue with a gdb script
> they'll report that to the subsystem maintainer rather than to the GDB
> script maintainers who are better equipped to address the issue.

If they run scripts/get_maintainer.pl they will get both subsystems to 
be listed as recipients to reach out to, so that should help cross 
pollinate and ease the pain of fixing.

> 
> And I'm not sure there's really a problem to fix here.  I'm seeing 13
> commits to scripts/gdb this year and afaict only one (e0349c46cb4f
> ("scripts/gdb/linux/symbols.py: address changes to module_sect_attrs"))
> looks like it is fixing up such a problem.

There are a few more that result from breakage that could have been avoided:

https://lore.kernel.org/all/20250601055027.3661480-1-tony.ambardar@gmail.com/

https://lore.kernel.org/all/20250619225105.320729-1-florian.fainelli@broadcom.com/

and the recent ones for interrupts.py.
-- 
Florian