MAINTAINERS | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)
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
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
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.
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
© 2016 - 2025 Red Hat, Inc.