]> www.infradead.org Git - users/jedix/linux-maple.git/commit
scripts/gdb: fix interrupts.py after maple tree conversion
authorFlorian Fainelli <florian.fainelli@broadcom.com>
Wed, 25 Jun 2025 02:10:20 +0000 (19:10 -0700)
committerAndrew Morton <akpm@linux-foundation.org>
Thu, 10 Jul 2025 04:07:53 +0000 (21:07 -0700)
commita02b0cde8ee515ee0c8efd33e7fbe6830c282e69
treef7e4e2e8a4dd4dd491a9f4e66138a9a89239b2bd
parentea9b77f98d94c4d5c1bd1ac1db078f78b40e8bf5
scripts/gdb: fix interrupts.py after maple tree conversion

In commit 721255b9826b ("genirq: Use a maple tree for interrupt descriptor
management"), the irq_desc_tree was replaced with a sparse_irqs tree using
a maple tree structure.  Since the script looked for the irq_desc_tree
symbol which is no longer available, no interrupts would be printed and
the script output would not be useful anymore.

In addition to looking up the correct symbol (sparse_irqs), a new module
(mapletree.py) is added whose mtree_load() implementation is largely
copied after the C version and uses the same variable and intermediate
function names wherever possible to ensure that both the C and Python
version be updated in the future.

This restores the scripts' output to match that of /proc/interrupts.

Link: https://lkml.kernel.org/r/20250625021020.1056930-1-florian.fainelli@broadcom.com
Fixes: 721255b9826b ("genirq: Use a maple tree for interrupt descriptor management")
Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Kieran Bingham <kbingham@kernel.org>
Cc: Shanker Donthineni <sdonthineni@nvidia.com>
Cc: Thomas Gleinxer <tglx@linutronix.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
scripts/gdb/linux/constants.py.in
scripts/gdb/linux/interrupts.py
scripts/gdb/linux/mapletree.py [new file with mode: 0644]
scripts/gdb/linux/xarray.py [new file with mode: 0644]