some more tracing but little progress.
it seems that we get stuck in an infinite loop, calling _kern_port_buffer_size_etc ad nauseam
Register external event 'initial_volumes_mounted': -2147483641
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
syscall_dispatcher: thread 0x30a call 0x12(_kern_release_sem)
syscall_dispatcher: done with syscall 0x12
msg thread: 778; this: 0x181b6b18; header: 0x181b66b8; fields: (nil); data: (nil); what: 0x5f525452 'RTR_'; line: 182; func: virtual BMessage::~BMessage()
msg thread: 778; this: 0x181b6b18; header: 0x181b66b8; fields: (nil); data: (nil); what: 0x5f525452 'RTR_'; line: 402; func: status_t BMessage::_Clear()
msg thread: 778; this: 0x181b6b18; header: 0x181b66b8; fields: (nil); data: (nil); what: 0x5f525452 'RTR_'; line: 836; func: bool BMessage::IsSourceWaiting() const
msg thread: 778; line: 273: func: static void BMessage::operator delete(void*, size_t)
syscall_dispatcher: thread 0x30a call 0xdd(_kern_port_count)
syscall_dispatcher: done with syscall 0xdd
syscall_dispatcher: thread 0x30a call 0xdd(_kern_port_count)
syscall_dispatcher: done with syscall 0xdd
syscall_dispatcher: thread 0x30a call 0xdc(_kern_port_buffer_size_etc)
syscall_dispatcher: done with syscall 0xdc
syscall_dispatcher: thread 0x30a call 0xdc(_kern_port_buffer_size_etc)
syscall_dispatcher: done with syscall 0xdc
syscall_dispatcher: thread 0x30a call 0xdc(_kern_port_buffer_size_etc)
syscall_dispatcher: done with syscall 0xdc
syscall_dispatcher: thread 0x30a call 0xdc(_kern_port_buffer_size_etc)
syscall_dispatcher: done with syscall 0xdc
syscall_dispatcher: thread 0x30a call 0xdc(_kern_port_buffer_size_etc)
and then the last 2 lines repeated indefinitely
edit:
@X512 you were right about the timer issue, system_time()
is wrong.