From b799321dff98245e2aa4f3181cfc6f52ae0efd33 Mon Sep 17 00:00:00 2001 From: Michael Ploujnikov Date: Sun, 31 Jan 2010 20:28:25 -0500 Subject: [PATCH] add a threads/threadpool NOBUG flag hierarchy and remove redundant/errorneous flag initializations as a result also use the test flag from logging.h --- src/backend/threadpool.c | 4 ---- src/backend/threads.c | 1 - src/backend/threads.h | 1 - src/include/logging.h | 7 ++++++- tests/backend/test-threadpool.c | 17 +++++++++-------- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/backend/threadpool.c b/src/backend/threadpool.c index eafbed026..43f1f7fc9 100644 --- a/src/backend/threadpool.c +++ b/src/backend/threadpool.c @@ -37,7 +37,6 @@ static lumiera_threadpool threadpool; * @file * */ -NOBUG_DEFINE_FLAG_PARENT (threadpool, threads_dbg); /*TODO insert a suitable/better parent flag here */ LUMIERA_ERROR_DEFINE(THREADPOOL_OFFLINE, "tried to acquire thread while threadpool is not available"); @@ -46,10 +45,7 @@ LUMIERA_ERROR_DEFINE(THREADPOOL_OFFLINE, "tried to acquire thread while threadpo void lumiera_threadpool_init(void) { - NOBUG_INIT_FLAG (threadpool); - NOBUG_INIT_FLAG (threads); TRACE (threadpool); - NOBUG_INIT_FLAG (threads); for (int i = 0; i < LUMIERA_THREADCLASS_COUNT; ++i) { diff --git a/src/backend/threads.c b/src/backend/threads.c index 6b949265b..0158419b2 100644 --- a/src/backend/threads.c +++ b/src/backend/threads.c @@ -41,7 +41,6 @@ * */ -NOBUG_DEFINE_FLAG_PARENT (threads, threads_dbg); /*TODO insert a suitable/better parent flag here */ //code goes here// diff --git a/src/backend/threads.h b/src/backend/threads.h index cc264d188..1eee2d536 100644 --- a/src/backend/threads.h +++ b/src/backend/threads.h @@ -34,7 +34,6 @@ //TODO: System includes// #include -NOBUG_DECLARE_FLAG (threads); /** diff --git a/src/include/logging.h b/src/include/logging.h index 2cbd07a82..5990d52a5 100644 --- a/src/include/logging.h +++ b/src/include/logging.h @@ -82,7 +82,10 @@ NOBUG_CPP_DEFINE_FLAG_PARENT ( filedescriptor_dbg, backend_dbg); NOBUG_CPP_DEFINE_FLAG_PARENT ( mmap_dbg, backend_dbg); NOBUG_CPP_DEFINE_FLAG_PARENT ( mmapcache_dbg, backend_dbg); NOBUG_CPP_DEFINE_FLAG_PARENT ( mmapings_dbg, backend_dbg); -NOBUG_CPP_DEFINE_FLAG_PARENT ( threads_dbg, backend_dbg); +NOBUG_CPP_DEFINE_FLAG_PARENT ( thread_dbg, backend_dbg); +NOBUG_CPP_DEFINE_FLAG_PARENT ( threads_dbg, thread_dbg); +NOBUG_CPP_DEFINE_FLAG_PARENT ( threadpool_dbg, thread_dbg); + /** base of debug logging for the proc layer */ NOBUG_CPP_DEFINE_FLAG_PARENT ( proc_dbg, debugging); NOBUG_CPP_DEFINE_FLAG_PARENT ( command_dbg, proc_dbg); @@ -119,6 +122,8 @@ NOBUG_CPP_DEFINE_FLAG_PARENT ( backend, progress); NOBUG_CPP_DEFINE_FLAG_PARENT ( file, backend); //opening/closing files etc NOBUG_CPP_DEFINE_FLAG_PARENT ( mmap, backend); //mmap errors NOBUG_CPP_DEFINE_FLAG_PARENT ( thread, backend); //starting/stopping threads +NOBUG_CPP_DEFINE_FLAG_PARENT ( threads, thread); +NOBUG_CPP_DEFINE_FLAG_PARENT ( threadpool, thread); /** progress log for the proc layer */ NOBUG_CPP_DEFINE_FLAG_PARENT ( proc, progress); /** progress log for proc-layer command dispatch */ diff --git a/tests/backend/test-threadpool.c b/tests/backend/test-threadpool.c index 8e7e88083..0e023858f 100644 --- a/tests/backend/test-threadpool.c +++ b/tests/backend/test-threadpool.c @@ -22,6 +22,7 @@ #include "tests/test.h" #include "backend/threadpool.h" +#include "include/logging.h" #include #include @@ -68,7 +69,7 @@ TEST ("threadpool1") LumieraThread t1 = lumiera_threadpool_acquire_thread(LUMIERA_THREADCLASS_INTERACTIVE, "test purpose", - &NOBUG_FLAG(NOBUG_ON)); + &NOBUG_FLAG(test)); // lumiera_threadpool_release_thread(t1); ECHO("acquired thread 1 %p",t1); lumiera_threadpool_destroy(); @@ -84,13 +85,13 @@ TEST ("two-thread-acquire") LumieraThread t1 = lumiera_threadpool_acquire_thread(LUMIERA_THREADCLASS_INTERACTIVE, "test purpose", - &NOBUG_FLAG(NOBUG_ON)); + &NOBUG_FLAG(test)); ECHO("acquiring thread 2"); LumieraThread t2 = lumiera_threadpool_acquire_thread(LUMIERA_THREADCLASS_IDLE, "test purpose", - &NOBUG_FLAG(NOBUG_ON)); + &NOBUG_FLAG(test)); ECHO("thread 1 state=%s", lumiera_threadstate_names[t1->state]); CHECK(LUMIERA_THREADSTATE_IDLE == t1->state); @@ -132,7 +133,7 @@ TEST ("many-sleepy-threads") &sleep_fn, (void *) &delay, "just sleep a bit", - &NOBUG_FLAG(NOBUG_ON)); + &NOBUG_FLAG(test)); } } @@ -157,7 +158,7 @@ TEST ("toomany-random-sleepy-threads (compiletest only)") &sleep_fn, (void *) &delay[i], "just sleep a bit", - &NOBUG_FLAG(NOBUG_ON)); + &NOBUG_FLAG(test)); } } lumiera_threadpool_destroy(); @@ -173,7 +174,7 @@ TEST ("no-function") NULL, NULL, "process my test function", - &NOBUG_FLAG(NOBUG_ON)); + &NOBUG_FLAG(test)); // cleanup ECHO("finished waiting"); @@ -194,7 +195,7 @@ TEST ("process-function") &is_prime, (void *)&number, //void * arg, "process my test function", - &NOBUG_FLAG(NOBUG_ON)); // struct nobug_flag* flag) + &NOBUG_FLAG(test)); // struct nobug_flag* flag) // cleanup lumiera_threadpool_destroy(); @@ -219,7 +220,7 @@ TEST ("many-random-sleepy-threads (compiletest only)") &sleep_fn, (void *) &delay[i], "just sleep a bit", - &NOBUG_FLAG(NOBUG_ON)); + &NOBUG_FLAG(test)); } } lumiera_threadpool_destroy();