diff --git a/src/system/kernel/port.cpp b/src/system/kernel/port.cpp index 2b21c6aa15..83db013ae9 100644 --- a/src/system/kernel/port.cpp +++ b/src/system/kernel/port.cpp @@ -125,6 +125,12 @@ _dump_port_info(struct port_entry *port) get_sem_count(port->write_sem, &count); kprintf(" write_sem count: %ld\n", count); kprintf(" total count: %ld\n", port->total_count); + + set_debug_variable("_port", (addr_t)port); + set_debug_variable("_portID", port->id); + set_debug_variable("_owner", port->owner); + set_debug_variable("_readSem", port->read_sem); + set_debug_variable("_writeSem", port->write_sem); } diff --git a/src/system/kernel/sem.cpp b/src/system/kernel/sem.cpp index 55035876fd..8bb2b34bec 100644 --- a/src/system/kernel/sem.cpp +++ b/src/system/kernel/sem.cpp @@ -166,11 +166,26 @@ dump_sem(struct sem_entry *sem) kprintf("\n"); } else kprintf(" -\n"); + + set_debug_variable("_sem", (addr_t)sem); + set_debug_variable("_semID", sem->id); + set_debug_variable("_owner", sem->u.used.owner); + #ifdef DEBUG_LAST_ACQUIRER kprintf("last acquired by: %ld, count: %ld\n", sem->u.used.last_acquirer, sem->u.used.last_acquire_count); kprintf("last released by: %ld, count: %ld\n", sem->u.used.last_releaser, sem->u.used.last_release_count); + + if (sem->u.used.last_acquirer != 0) + set_debug_variable("_acquirer", sem->u.used.last_acquirer); + else + unset_debug_variable("_acquirer"); + + if (sem->u.used.last_releaser != 0) + set_debug_variable("_releaser", sem->u.used.last_releaser); + else + unset_debug_variable("_releaser"); #endif } else { kprintf("next: %p\n", sem->u.unused.next);