No need to send it the long way, just put it at the beginning of the scheduler's...
authorFilippo Gioachin <gioachin@uiuc.edu>
Thu, 4 Feb 2010 07:21:13 +0000 (01:21 -0600)
committerFilippo Gioachin <gioachin@uiuc.edu>
Thu, 4 Feb 2010 07:21:13 +0000 (01:21 -0600)
src/ck-core/ck.C

index 27c309f7bfdc0bd952386df2906cdcfe8f2631d5..ca250a135ea956bafdd941e3b5f8cf1edb51aa5c 100644 (file)
@@ -1951,7 +1951,8 @@ class CkMessageReplay : public CkMessageWatcher {
                        envelope *env=delayed.deq();
                        if (isNext(env)) { /* this is the next message: process it */
                                REPLAYDEBUG("Dequeueing message: "<<env->getSrcPe()<<" "<<env->getTotalsize()<<" "<<env->getEvent())
-                               CmiSyncSendAndFree(CkMyPe(),env->getTotalsize(),(char *)env);
+                               //CmiSyncSendAndFree(CkMyPe(),env->getTotalsize(),(char *)env);
+                               CsdEnqueueLifo((void*)env); // Make it at the beginning since this is the one we want next
                                return;
                        }
                        else /* Not ready yet-- put it back in the