From 138ff901fd63232fbcc3f8c2c4a6168bb96234c5 Mon Sep 17 00:00:00 2001 From: jjenista Date: Mon, 16 Aug 2010 21:35:34 +0000 Subject: [PATCH] checking bug fix for memory queue, the jury is still out on the formal verification of this fix --- Robust/src/Runtime/mlp_runtime.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Robust/src/Runtime/mlp_runtime.c b/Robust/src/Runtime/mlp_runtime.c index a9cdb3e0..b7a87b55 100644 --- a/Robust/src/Runtime/mlp_runtime.c +++ b/Robust/src/Runtime/mlp_runtime.c @@ -515,7 +515,8 @@ ADDVECTOR(MemoryQueue *Q, REntry *r) { flag=(void*)LOCKXCHG((unsigned INTPTR*)&(V->array[index]), (unsigned INTPTR)flag); if (flag!=NULL) { if (isParentCoarse(r)) { //parent's retire immediately - atomic_dec(&V->item.total); + atomic_dec(&V->item.total); + V->index--; } return READY; } else { -- 2.34.1