#9741: KDL when running make check of Postgresql -----------------------------+---------------------------- Reporter: markh | Owner: axeld Type: bug | Status: new Priority: normal | Milestone: R1 Component: System/Kernel | Version: R1/Development Resolution: | Keywords: Blocked By: | Blocking: Has a Patch: 0 | Platform: All -----------------------------+---------------------------- Description changed by diver: Old description: > Running make check in href45614 (containing a fix for $9734 which I > needed), causes the following KDL: > > Last message repeated 8 times. > PANIC: _mutex_unlock() failure: thread 2779 is trying to release mutex > 0x801b6384 (current holder 2218) > > Welcome to Kernel Debugging Land... > Thread 2779 "postgres" running on CPU 1 > stack trace for thread 2779 "postgres" > kernel stack: 0xccf44000 to 0xccf40000 > user stack: 0x61b28000 to 0x62b28000 > frame caller <image>:function + offset > 0 ccf47d58 (+ 32) 80132aa2 <kernel_x86> arch_debug_stack_trace + 0x12 > 1 ccf47d78 (+ 16) 80092db3 <kernel_x86> stack_trace_trampoline(NULL) > + 0x0b > 2 ccf47d88 (+ 12) 8012553e <kernel_x86> > arch_debug_call_with_fault_handler + 0x1b > 3 ccf47d94 (+ 48) 80094856 <kernel_x86> debug_call_with_fault_handler > + 0x5e > 4 ccf47dc4 (+ 64) 80092fd3 <kernel_x86> > kernel_debugger_loop(0x801718f7 "PANIC: ", 0x8016ebe0 "_mutex_unlock() > failure: thread %ld is trying to release mutex %p (current holder %ld) > ", 0xccf47e70 " > ", int32: 1) + 0x21b > 5 ccf47e04 (+ 48) 80093337 <kernel_x86> > kernel_debugger_internal(0x801718f7 "PANIC: ", 0x8016ebe0 > "_mutex_unlock() failure: thread %ld is trying to release mutex %p > (current holder %ld) > ", 0xccf47e70 " > ", int32: 1) + 0x53 > 6 ccf47e34 (+ 48) 80094be2 <kernel_x86> panic + 0x36 > 7 ccf47e64 (+ 64) 800894cc <kernel_x86> _mutex_unlock + 0x74 > 8 ccf47ea4 (+ 160) 800f669f <kernel_x86> _user_xsi_semop + 0x8f3 > 9 ccf47f44 (+ 180) 801281e0 <kernel_x86> handle_syscall + 0xcd > user iframe at 0xccf47fa8 (end = 0xccf48000) > eax 0x1e ebx 0x23ba188 exc 0x62b27884 edx 0x610e8114 > esi 0x17cd0fc edi 0x549b19b0 ebp 0x62b278b0 esp 0xccf47fdc > eip 0x610e8114 eflags 0x3202 user esp 0x62b27884 > vector: 0x63, error code: 0x0 > 10 ccf47fab (+ 0) 610e8114 <commpage> commpage_syscall + 0x04 > 11 62b278b0 (+ 64) 015162w9 <postgres> PGSemaphoreLock + 0x65 > 12 62b278f0 (+ 64) 0155d4be <postgres> LWLockAcquireOrWait + 0x14e > 13 62b27930 (+ 80) 013a2e38 <postgres> XLogFlush + 0x80 > 14 62b27980 (+ 272) 01396092 <postgres> ForceSyncCommit (nearest) + > 0x526 > 15 62b27a90 (+ 48) 01396aab <postgres> ForceSyncCommit (nearest) + > 0xf3f > 16 62b27ac0 (+ 48) 013974b5 <postgres> CommitTransactionCommand + > 0x121 > 17 62b27af0 (+ 32) 0156a484 <postgres> check_log_duration (nearest) + > 0x8e0 > 18 62b27b10 (+ 176) 015686a9 <postgres> pg_plan_queries (nearest) + > 0x435 > 19 62b27bc0 (+ 144) 0156c409 <postgres> PostgresMain + 0x839 > 20 62b27c50 (+ 80) 01525fe3 <postgres> ClosePostmasterPorts (nearest) > + 0x290b > 21 62b27ca0 (+ 48) 015257d2 <postgres> ClosePostmasterPorts (nearest) > + 0x20fa > 22 62b27cd0 (+ 336) 015224f6 <postgres> PostmasterMain (nearest) + > 0x19ee > 23 62b27e20 (+ 272) 01521df6 <postgres> PostmasterMain + 0x12ee > 24 62b27f30 (+ 64) 014b903c <postgres> main (nearest) + 0x208 > 25 62b27f70 (+ 48) 0134bd3b <postgres> _start + 0x5b > 26 62b27fa0 (+ 48) 0117f586 </boot/system/runtime_loader@0x01170000> > <unknown> + 0xf506 > 27 62b27fd0 (+ 0) 618e825e <commpage> commpage_thread_exit + 0x00 > > I don't know yet if it is reproducible as Haiku now gives another KDL > when I try to start it. > I will have a look at the other KDL and reinstall Haiku again to see if I > can reproduce this one. > There might be some typos in the KDL output as I made a photo of the KDL > and typed it over. I still have the photo, so I can look back if the KDL > above contains something odd. New description: Running make check in hrev45614 (containing a fix for #9734 which I needed), causes the following KDL: {{{ Last message repeated 8 times. PANIC: _mutex_unlock() failure: thread 2779 is trying to release mutex 0x801b6384 (current holder 2218) Welcome to Kernel Debugging Land... Thread 2779 "postgres" running on CPU 1 stack trace for thread 2779 "postgres" kernel stack: 0xccf44000 to 0xccf40000 user stack: 0x61b28000 to 0x62b28000 frame caller <image>:function + offset 0 ccf47d58 (+ 32) 80132aa2 <kernel_x86> arch_debug_stack_trace + 0x12 1 ccf47d78 (+ 16) 80092db3 <kernel_x86> stack_trace_trampoline(NULL) + 0x0b 2 ccf47d88 (+ 12) 8012553e <kernel_x86> arch_debug_call_with_fault_handler + 0x1b 3 ccf47d94 (+ 48) 80094856 <kernel_x86> debug_call_with_fault_handler + 0x5e 4 ccf47dc4 (+ 64) 80092fd3 <kernel_x86> kernel_debugger_loop(0x801718f7 "PANIC: ", 0x8016ebe0 "_mutex_unlock() failure: thread %ld is trying to release mutex %p (current holder %ld) ", 0xccf47e70 " ", int32: 1) + 0x21b 5 ccf47e04 (+ 48) 80093337 <kernel_x86> kernel_debugger_internal(0x801718f7 "PANIC: ", 0x8016ebe0 "_mutex_unlock() failure: thread %ld is trying to release mutex %p (current holder %ld) ", 0xccf47e70 " ", int32: 1) + 0x53 6 ccf47e34 (+ 48) 80094be2 <kernel_x86> panic + 0x36 7 ccf47e64 (+ 64) 800894cc <kernel_x86> _mutex_unlock + 0x74 8 ccf47ea4 (+ 160) 800f669f <kernel_x86> _user_xsi_semop + 0x8f3 9 ccf47f44 (+ 180) 801281e0 <kernel_x86> handle_syscall + 0xcd user iframe at 0xccf47fa8 (end = 0xccf48000) eax 0x1e ebx 0x23ba188 exc 0x62b27884 edx 0x610e8114 esi 0x17cd0fc edi 0x549b19b0 ebp 0x62b278b0 esp 0xccf47fdc eip 0x610e8114 eflags 0x3202 user esp 0x62b27884 vector: 0x63, error code: 0x0 10 ccf47fab (+ 0) 610e8114 <commpage> commpage_syscall + 0x04 11 62b278b0 (+ 64) 015162w9 <postgres> PGSemaphoreLock + 0x65 12 62b278f0 (+ 64) 0155d4be <postgres> LWLockAcquireOrWait + 0x14e 13 62b27930 (+ 80) 013a2e38 <postgres> XLogFlush + 0x80 14 62b27980 (+ 272) 01396092 <postgres> ForceSyncCommit (nearest) + 0x526 15 62b27a90 (+ 48) 01396aab <postgres> ForceSyncCommit (nearest) + 0xf3f 16 62b27ac0 (+ 48) 013974b5 <postgres> CommitTransactionCommand + 0x121 17 62b27af0 (+ 32) 0156a484 <postgres> check_log_duration (nearest) + 0x8e0 18 62b27b10 (+ 176) 015686a9 <postgres> pg_plan_queries (nearest) + 0x435 19 62b27bc0 (+ 144) 0156c409 <postgres> PostgresMain + 0x839 20 62b27c50 (+ 80) 01525fe3 <postgres> ClosePostmasterPorts (nearest) + 0x290b 21 62b27ca0 (+ 48) 015257d2 <postgres> ClosePostmasterPorts (nearest) + 0x20fa 22 62b27cd0 (+ 336) 015224f6 <postgres> PostmasterMain (nearest) + 0x19ee 23 62b27e20 (+ 272) 01521df6 <postgres> PostmasterMain + 0x12ee 24 62b27f30 (+ 64) 014b903c <postgres> main (nearest) + 0x208 25 62b27f70 (+ 48) 0134bd3b <postgres> _start + 0x5b 26 62b27fa0 (+ 48) 0117f586 </boot/system/runtime_loader@0x01170000> <unknown> + 0xf506 27 62b27fd0 (+ 0) 618e825e <commpage> commpage_thread_exit + 0x00 }}} I don't know yet if it is reproducible as Haiku now gives another KDL when I try to start it. I will have a look at the other KDL and reinstall Haiku again to see if I can reproduce this one. There might be some typos in the KDL output as I made a photo of the KDL and typed it over. I still have the photo, so I can look back if the KDL above contains something odd. -- -- Ticket URL: <http://dev.haiku-os.org/ticket/9741#comment:2> Haiku <http://dev.haiku-os.org> Haiku - the operating system.