From 808de9c7004d1e85fc37fbd39382b1ca58c0f470 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Fri, 17 Oct 2008 16:28:02 +0000 Subject: [PATCH] * The undertaker was not locking when enqueuing the thread structure in the free queue. * "thread" also prints the thread's I/O priority. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28218 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/kernel/thread.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/system/kernel/thread.cpp b/src/system/kernel/thread.cpp index a28c39147b..959c037772 100644 --- a/src/system/kernel/thread.cpp +++ b/src/system/kernel/thread.cpp @@ -589,6 +589,7 @@ undertaker(void* /*args*/) release_sem_etc(entry.deathSem, 1, B_DO_NOT_RESCHEDULE); // free the thread structure + locker.Lock(); thread_enqueue(thread, &dead_q); // TODO: Use the slab allocator! } @@ -1119,7 +1120,8 @@ _dump_thread_info(struct thread *thread, bool shortInfo) kprintf("name: \"%s\"\n", thread->name); kprintf("all_next: %p\nteam_next: %p\nq_next: %p\n", thread->all_next, thread->team_next, thread->queue_next); - kprintf("priority: %ld (next %ld)\n", thread->priority, thread->next_priority); + kprintf("priority: %ld (next %ld, I/O: %ld)\n", thread->priority, + thread->next_priority, thread->io_priority); kprintf("state: %s\n", state_to_text(thread, thread->state)); kprintf("next_state: %s\n", state_to_text(thread, thread->next_state)); kprintf("cpu: %p ", thread->cpu);