rf_GenericWakeupFunc
rf_InitNode(node, rf_wait, RF_FALSE, rf_DiskReadFunc, rf_DiskReadUndoFunc, rf_GenericWakeupFunc, 2,1,4,0, dag_h, name, allocList); \
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rpd", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rsd", allocList);
rf_DiskReadUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h,
rf_DiskReadUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0,
rf_DiskReadUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0,
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rp ", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rpd", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rsd", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rrd", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rrd", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Wnp", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Wnq", allocList);
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Wnd", allocList);
rf_InitNode(node, rf_wait, RF_FALSE, rf_DiskReadFunc, rf_DiskReadUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, name, allocList); \
rf_InitNode(node, rf_wait, RF_FALSE, rf_DiskWriteFunc, rf_DiskWriteUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, name, allocList); \
rf_InitNode(tmpdiskNode, rf_wait, RF_FALSE, doFunc, undoFunc, rf_GenericWakeupFunc,
rf_DiskReadMirrorUndoFunc, rf_GenericWakeupFunc, 1, 1, 5, 0, dag_h,
rf_GenericWakeupFunc, 1, 1, 4, 0,
rf_GenericWakeupFunc, 1, 1, 4, 0,
rf_GenericWakeupFunc,
rf_GenericWakeupFunc, 1, 1, 4, 0,
rf_DiskWriteUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0,
rf_DiskWriteUndoFunc, rf_GenericWakeupFunc,
rf_GenericWakeupFunc, (nfaults * numParityNodes),
rf_GenericWakeupFunc, numParityNodes, 1, 4, 0,
rf_GenericWakeupFunc, numParityNodes,
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h,
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h,
rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h,
rf_GenericWakeupFunc(node, retcode); /* call wake func
rf_GenericWakeupFunc(node, retcode); /* call wake func
rf_GenericWakeupFunc(node, retcode);
void rf_GenericWakeupFunc(void *, int);
rf_GenericWakeupFunc(node, 0);
rf_GenericWakeupFunc(node, retcode); /* call wake func
rf_GenericWakeupFunc(node, 0);
rf_GenericWakeupFunc(node, 0); /* node execute successfully */
rf_GenericWakeupFunc(node, 0);
rf_GenericWakeupFunc(node, 0);
rf_GenericWakeupFunc(node, 0);
rf_InitNode(&rodNodes[nodeNum], rf_wait, RF_FALSE, rf_DiskReadFunc, rf_DiskReadUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Rod", allocList);
rf_InitNode(&wndNodes[i], rf_wait, RF_TRUE, rf_DiskWriteFunc, rf_DiskWriteUndoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, "Wnd", allocList);
rf_InitNode(lpoNode, rf_wait, RF_FALSE, rf_ParityLogOverwriteFunc, rf_ParityLogOverwriteUndoFunc, rf_GenericWakeupFunc, 1, 1, 2, 0, dag_h, "Lpo", allocList);
rf_InitNode(&readDataNodes[i], rf_wait, RF_FALSE, rf_DiskReadFunc, rf_DiskReadUndoFunc, rf_GenericWakeupFunc, nNodes, 1, 4, 0, dag_h, "Rod", allocList);
rf_InitNode(&readParityNodes[i], rf_wait, RF_FALSE, rf_DiskReadFunc, rf_DiskReadUndoFunc, rf_GenericWakeupFunc, nNodes, 1, 4, 0, dag_h, "Rop", allocList);
rf_InitNode(&writeDataNodes[i], rf_wait, RF_TRUE, rf_DiskWriteFunc, rf_DiskWriteUndoFunc, rf_GenericWakeupFunc, 1, nNodes, 4, 0, dag_h, "Wnd", allocList);
rf_InitNode(&lpuNodes[i], rf_wait, RF_FALSE, rf_ParityLogUpdateFunc, rf_ParityLogUpdateUndoFunc, rf_GenericWakeupFunc, 1, 1, 2, 0, dag_h, "Lpu", allocList);
rf_InitNode(tmpNode, rf_wait, RF_FALSE, doFunc, undoFunc, rf_GenericWakeupFunc, 1, 1, 4, 0, dag_h, name, alloclist);
rf_GenericWakeupFunc(node, 0); /* call wake func explicitly since no
rf_GenericWakeupFunc(node, 0); /* call wake func explicitly since no
rf_GenericWakeupFunc(node, 0); /* call wake func explicitly since no
rf_GenericWakeupFunc(node, 0);
rf_GenericWakeupFunc(node, 0);
rf_InitNode(node, rf_wait, RF_FALSE, rf_DiskReadFunc, rf_DiskReadUndoFunc, rf_GenericWakeupFunc, 2,1,4,0, dag_h, name, allocList); \
rf_GenericWakeupFunc(node, 0);
rf_GenericWakeupFunc(node, 0);