# HG changeset patch # User Nina Engelhardt # Date 1373363409 -7200 # Node ID b8bb94b990c4215f5566c93a40b3556ecf56bc99 # Parent a7c77d69d127392db6a7a1e331292d63a2088678 fix: 0 dependency tasks were never started diff -r a7c77d69d127 -r b8bb94b990c4 VSs_PluginFns.c --- a/VSs_PluginFns.c Fri Jul 05 15:36:42 2013 +0200 +++ b/VSs_PluginFns.c Tue Jul 09 11:50:09 2013 +0200 @@ -176,9 +176,6 @@ ReturnTheSlv: //Nina, doing gotos to here should help with holistic.. -if(returnSlv){ -DEBUG__printf_w_task(dbgRqstHdlr,((VSsSemData*)returnSlv->semanticData)->taskStub,"scheduled"); -} #ifdef IDLE_SLAVES if (!returnSlv) { returnSlv = semEnv->idlePr[coreNum][slotNum]; diff -r a7c77d69d127 -r b8bb94b990c4 VSs_Request_Handlers.c --- a/VSs_Request_Handlers.c Fri Jul 05 15:36:42 2013 +0200 +++ b/VSs_Request_Handlers.c Tue Jul 09 11:50:09 2013 +0200 @@ -261,10 +261,10 @@ * the hash-entry's count of enabled and non-finished readers.*/ taskStub->numBlockingProp -= 1; DEBUG__printf_w_task(dbgSS, taskStub, "taking ptrEntry %p (read)", ptrEntry); - if (taskStub->numBlockingProp == 0) { - writePrivQ(taskStub, semEnv->taskReadyQ); - DEBUG__printf_w_task(dbgSS, taskStub, "ready (dependencies fulfilled)"); - } +// if (taskStub->numBlockingProp == 0) { +// writePrivQ(taskStub, semEnv->taskReadyQ); +// DEBUG__printf_w_task(dbgSS, taskStub, "ready (dependencies fulfilled)"); +// } ptrEntry->numEnabledNonDoneReaders += 1; } else { /*Otherwise, the reader is put into the hash-entry's Q of * waiters*/ @@ -283,10 +283,10 @@ * into the readyQ.*/ taskStub->numBlockingProp -= 1; DEBUG__printf_w_task(dbgSS,taskStub,"taking ptrEntry %p (write)",ptrEntry); - if (taskStub->numBlockingProp == 0) { - DEBUG__printf_w_task(dbgSS, taskStub, "ready (dependencies fulfilled)"); - writePrivQ(taskStub, semEnv->taskReadyQ); - } +// if (taskStub->numBlockingProp == 0) { +// DEBUG__printf_w_task(dbgSS, taskStub, "ready (dependencies fulfilled)"); +// writePrivQ(taskStub, semEnv->taskReadyQ); +// } ptrEntry->hasEnabledNonFinishedWriter = TRUE; } else {/*Otherwise, put the writer into the entry's Q of waiters.*/ DEBUG__printf_w_task(dbgSS,taskStub,"getting in line for ptrEntry %p (write)",ptrEntry); @@ -295,6 +295,10 @@ } } } //for argNum + if(taskStub->numBlockingProp == 0){ + DEBUG__printf_w_task(dbgSS, taskStub, "ready (dependencies fulfilled)"); + writePrivQ(taskStub, semEnv->taskReadyQ); + } #endif resume_slaveVP(semReq->callingSlv, semEnv);