On Wed, Jul 12, 2023 at 3:49 PM HAGIO KAZUHITO(萩尾 一仁) <k-hagio...@nec.com> wrote:
> On 2023/07/12 16:30, lijiang wrote: > > On Fri, Jul 7, 2023 at 2:17 PM HAGIO KAZUHITO(萩尾 一仁) <k-hagio...@nec.com > > > > wrote: > > > >> From: Kazuhito Hagio <k-hagio...@nec.com> > >> > >> Kernel commit 721255b982 ("genirq: Use a maple tree for interrupt > >> descriptor management"), which is contained in Linux 6.5-rc1 and later > >> kernels, replaced irq_desc_tree with a maple tree sparse_irqs. > >> > >> > > Thank you for the fix, Kazu. Only two comments: > > > > Without the patch, "irq [-a|-s]" options fails with an error, e.g. the > >> following on x86_64, on kernels configured with CONFIG_SPARSE_IRQS=y. > >> > > > > ^^^^^ > > > > It should be "CONFIG_SPARSE_IRQ=y", the following code comment is right. > > Maybe it's a typo? > > + /* 6.5 and later: CONFIG_SPARSE_IRQ */ > > Yes, you are right. Will fix the commit log. > > >> @@ -5419,8 +5421,8 @@ x86_64_get_irq_affinity(int irq) > >> static void > >> x86_64_show_interrupts(int irq, ulong *cpus) > >> { > >> - if (symbol_exists("irq_desc") || > >> - kernel_symbol_exists("irq_desc_ptrs") || > >> > > > > The check for kernel_symbol_exists("irq_desc_ptrs") is removed in this > > function, is that expected behavior? But the above two functions still > > retain the kernel_symbol_exists("irq_desc_ptrs") condition check. > > ugh, thank you for pointing this out, I didn't intend to remove it. > Will fix this and post a v2. > > In addition, I also saw that there is a similar case on IA64 arch, but I can not test it. Maybe leave it there? static void ia64_dump_irq(int irq) { if (symbol_exists("irq_desc") || symbol_exists("_irq_desc") || kernel_symbol_exists("irq_desc_ptrs")) { machdep->dump_irq = generic_dump_irq; return(generic_dump_irq(irq)); } ... } Thanks. Lianbo
-- Crash-utility mailing list Crash-utility@redhat.com https://listman.redhat.com/mailman/listinfo/crash-utility Contribution Guidelines: https://github.com/crash-utility/crash/wiki