IRC channel logs

2025-07-10.log

back to list of logs

<damo22>IRR 48 49 58(level) 59(level)
<damo22>cpu0 is stuck waiting for send pending on ICR
<damo22>after sending the edge ipi
<damo22>i think the masking is not happening as you said
<damo22>and 59(level) keeps triggering
<damo22>(gdb) p ndisabled_irq[11]
<damo22>$3 = 451174
<damo22>and the irq is unmasked
<damo22>i made it always mask_irq even if ndisabled_irq[] != 1 and then i got a failed assert
<damo22>{cpu5} ../i386/i386/irq.c:57: __enable_irq: Assertion `ndisabled_irq[irq_nr] > 0
<damo22>' failed.Debugger invoked: assertion failure
<damo22>Kernel Breakpoint trap, eip 0xc1000ba4, code 0, cr2 f5fcbe34
<damo22>Stopped at Debugger+0x13: int $3
<damo22>Debugger(c107cced,c107fd32,f5fcbed0,c1000bcc,c10a221c)+0x13
<damo22>Assert(c107fd32,c107fd10,39,c1076ac4,f5bf7800)+0x7c
<damo22>__enable_irq(b,f6412504,7,c1053531)+0x86
<damo22>irq_acknowledge(f64cacb8,3,c107de8f,c10511e7)+0x99
<damo22>ds_device_intr_ack(f543af10,f64cacb8,f5fcbf20,c1003a45,fa0c0000)+0x3d
<damo22>_Xdevice_intr_ack(f6654010,fa0c0010,f6654030,1,d9ffe5c)+0x3b
<damo22>ipc_kobject_server(f6654000,f5bfb888,f5bdf580,0)+0x93
<damo22>mach_msg_trap(d9ffe5c,3,20,20,68)+0x997
<damo22>is it an irq sharing problem and counting interrupts
<damo22>i think it could be disabling twice in a row for two different devices on the same irq and then enabling again, but the irq counter is then -1 and increments to 0
<damo22>we need to count interrupts per device, not per irq?
<damo22>it must be a race condition between devices on the same irq both raising interrupts simultaneously
<damo22>and the masking does not happen
<damo22>do we need to use atomic increment on the counters?
<damo22>splhigh wont stop two cpus from executing the increment at the same time
<damo22>youpi: i found that there are half a million irq nesting occurrences when the bug happens and the irq is STILL unmasked
<damo22>so my conclusion is the counter never hits 1 and so skips masking
<damo22>in __disable_irq
<gnu_srs>youpi: Regarding gnupg2 it seems like 2.4.7-21 or 2.4.8-1 are BD-uninstallable. And installing gnupg=2.4.8-1 fails since e.g. dirmngr is unavailable :(
<damo22>{cpu5} ../vm/vm_fault.c:709: vm_fault_page: Assertion `!must_be_resident' failed
<damo22>.Debugger invoked: assertion failure
<damo22>Kernel Breakpoint trap, eip 0xc1000ba4, code 0, cr2 f5514c94
<damo22>Stopped at Debugger+0x13: int $3
<damo22>Debugger(c107cced,c107f949,5,c1000bcc,1)+0x13
<damo22>Assert(c107f949,c107f938,2c5,c10767bc,f5514d18)+0x7c
<damo22>vm_fault_page(f60ed950,0,0,1,0,f5514d90,f5514d94,f5514d98,0,0,46,c1053dac)+0x15b
<damo22>a
<damo22>vm_fault(f5f396e8,0,0,1,0)+0x558
<damo22>vm_fault_unwire(f5f396e8,f5f397a4,f6087108,f6087108)+0x11e
<damo22>vm_map_pageable_scan(f5f396e8,f6546dc8,200f1000,3)+0x175
<damo22>vm_map_protect(f5f396e8,200d0000,200f1000,3,0,200d0000,200f1000,c103abda)+0x149
<damo22>vm_protect(f5f396e8,200d0000,21000,0,3)+0x56
<damo22>_Xvm_protect(f54b9010,fa0bb010,f54b9000,c102814e,1036d34)+0x58
<damo22>ipc_kobject_server(f54b9000,1,0,0)+0x93
<damo22>mach_msg_trap(1036d34,3,38,20,4)+0x997
<damo22>>>>>> user space <<<<<
<damo22>db{5}>
<damo22>that happened on a full smp system with my patches i mailed in and compiling with -j6