Re: [PATCH v4 16/26] genirq: Allow per-cpu interrupt sharing for non-overlapping affinities
From: Daniel Thompson <danielt@kernel.org>
Date: 2025-12-05 09:19:55
Also in:
linux-acpi, linux-mips, lkml
On Thu, Dec 04, 2025 at 02:21:51PM +0000, Marc Zyngier wrote:
On Thu, 04 Dec 2025 10:56:13 +0000, Daniel Thompson [off-list ref] wrote:quoted
CPU 0 Unable to handle kernel paging request at virtual address 0000000000000000, epc == ffffffff801c2398, ra == ffffffff801bab00 Oops[#1]: CPU: 0 UID: 0 PID: 0 Comm: swapper/0 Not tainted 6.18.0-next-20251204 #20 NONE Hardware name: mti,malta $ 0 : 0000000000000000 0000000000000001 0000000000000000 0000000000000000 $ 4 : 0000000000000001 a8000000020e8008 0000000000000000 ffffffff80c23b80 $ 8 : 0000000000000004 0000000000000000 0000000000000000 000000000000002f $12 : a8000000020f4000 0000000000003ff0 0000000000003000 0000000000000003 $16 : ffffffff80d095c0 ffffffff80ceb410 0000000000000019 ffffffff80c378c0 $20 : ffffffff80c4bec8 0000000000000000 ffffffff80e00000 ffffffff80de0000 $24 : 0000000000000000 0000000000000010 $28 : ffffffff80c20000 a8000000020f7ec0 a800000000e12fcd ffffffff801bab00 epc : ffffffff801c2398 handle_percpu_devid_irq+0xb8/0x250 ra : ffffffff801bab00 handle_irq_desc+0x48/0x88 Status: 1400a4e2 KX SX UX KERNEL EXL Cause : 00800408 (ExcCode 02) BadVA : 0000000000000000 PrId : 0001a900 (MIPS I6400) Modules linked in: Process swapper/0 (pid: 0, threadinfo=(____ptrval____), task=(____ptrval____), tls=0000000000000000) Stack : ffffffff80c35a2c 0000000000000002 ffffffff80e00000 0fffffffffffffff ffffffff80c50000 0000000000000001 0000000000000003 ffffffff801bab00 0000000000000000 ffffffff805d82a8 0000000000000000 0000000000000008 0000000000000000 0000000000000000 0000000000000000 5189d95a7a4f4800 a800000002014300 0000000000000002 0000000000000001 000000000000001f ffffffff80e00000 0000000000000004 0000000000000000 ffffffff801bab00 0000000000000000 ffffffff809ec128 0000000000000001 fffffffffffffffb 0000000000000001 ffffffff805d7ebc 0000000000000000 0000000000000000 ffffffff80c23c80 ffffffff80c50000 ffffffff80de0000 ffffffff80db0000 0000000000000000 ffffffff80112f10 ffffffff80c23c80 0000000000000000 Call Trace: [<ffffffff801c2398>] handle_percpu_devid_irq+0xb8/0x250 [<ffffffff801bab00>] handle_irq_desc+0x48/0x88 [<ffffffff805d82a8>] gic_irq_dispatch+0xc0/0x288 [<ffffffff801bab00>] handle_irq_desc+0x48/0x88 [<ffffffff809ec128>] do_domain_IRQ+0x28/0x40 [<ffffffff805d7ebc>] plat_irq_dispatch+0x64/0xe8 [<ffffffff80112f10>] handle_int+0x134/0x140 [<ffffffff80110dc8>] calibrate_delay+0x158/0x290 [<ffffffff80d58e48>] start_kernel+0x754/0x7a4This hack fixes it for me, but really, mips needs to grow up and stop using these antiquated APIs.
I can't comment on that. Literally the only thing I ever do on MIPS is test kgdb ;-) .
Can please you give it a go?
Looks good to me. Local testing on MIPS worked nicely and I got a successful build back for the kgdb tests: https://gitlab.com/daniel-thompson/linux/-/pipelines/2196473049 Daniel.