From 6d24fdc5573917b2d06f4c2295f03a2f73ece2f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Fri, 10 Mar 2006 23:55:50 +0000 Subject: [PATCH] Better means to debug apps that try to acquire kernel semaphores. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16695 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/kernel/sem.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/system/kernel/sem.c b/src/system/kernel/sem.c index 2fd0e12b33..31bd47aac1 100644 --- a/src/system/kernel/sem.c +++ b/src/system/kernel/sem.c @@ -499,8 +499,8 @@ switch_sem_etc(sem_id semToBeReleased, sem_id id, int32 count, // doesn't have any use outside the kernel if ((flags & B_CHECK_PERMISSION) != 0 && sSems[slot].u.used.owner == team_get_kernel_team_id()) { - dprintf("thread %ld tried to acquire kernel semaphore.\n", - thread_get_current_thread_id()); + dprintf("thread %ld tried to acquire kernel semaphore %ld.\n", + thread_get_current_thread_id(), id); status = B_NOT_ALLOWED; goto err; } @@ -618,6 +618,11 @@ err: RELEASE_SEM_LOCK(sSems[slot]); restore_interrupts(state); +#if 0 + if (status == B_NOT_ALLOWED) + _user_debugger("Thread tried to acquire kernel semaphore."); +#endif + return status; }