Home | History | Annotate | Download | only in raidframe

Lines Matching refs:dag_h

180 rf_FreeDAG(RF_DagHeader_t *dag_h)
188 if (dag_h)
189 raidPtr = dag_h->raidPtr;
191 while (dag_h) {
192 nextDag = dag_h->next;
193 rf_FreeAllocList(dag_h->allocList);
194 for (asmap = dag_h->asmList; asmap;) {
199 while (dag_h->pda_cleanup_list) {
200 pda = dag_h->pda_cleanup_list;
201 dag_h->pda_cleanup_list = dag_h->pda_cleanup_list->next;
204 while (dag_h->nodes) {
205 tmpnode = dag_h->nodes;
206 dag_h->nodes = dag_h->nodes->list_next;
209 rf_FreeDAGHeader(raidPtr, dag_h);
210 dag_h = nextDag;
338 rf_AllocStripeBuffer(RF_Raid_t *raidPtr, RF_DagHeader_t *dag_h,
375 vple->next = dag_h->desc->stripebufs;
376 dag_h->desc->stripebufs = vple;
400 into our dag_h cleanup structure. */
403 rf_AllocBuffer(RF_Raid_t *raidPtr, RF_DagHeader_t *dag_h, int size)
411 vple->next = dag_h->desc->iobufs;
412 dag_h->desc->iobufs = vple;
595 rf_PrintDAG(RF_DagHeader_t *dag_h)
601 switch (dag_h->status) {
616 unvisited = dag_h->succedents[0]->visited;
618 printf("DAG type: %s\n", dag_h->creator);
620 printf("(0) %d Hdr: %s, s%d, (commit %d/%d) S{", dag_h->nodeNum,
621 status, dag_h->numSuccedents, dag_h->numCommitNodes, dag_h->numCommits);
622 for (i = 0; i < dag_h->numSuccedents; i++) {
623 printf("%d%s", dag_h->succedents[i]->nodeNum,
624 ((i == dag_h->numSuccedents - 1) ? "\0" : " "));
627 for (i = 0; i < dag_h->numSuccedents; i++) {
628 if (dag_h->succedents[i]->visited == unvisited)
629 rf_RecurPrintDAG(dag_h->succedents[i], 1, unvisited);
635 rf_AssignNodeNums(RF_DagHeader_t * dag_h)
641 unvisited = dag_h->succedents[0]->visited;
643 dag_h->nodeNum = nnum++;
644 for (i = 0; i < dag_h->numSuccedents; i++) {
645 node = dag_h->succedents[i];
647 nnum = rf_RecurAssignNodeNums(dag_h->succedents[i], nnum, unvisited);
670 rf_ResetDAGHeaderPointers(RF_DagHeader_t *dag_h, RF_DagHeader_t *newptr)
673 for (i = 0; i < dag_h->numSuccedents; i++)
674 if (dag_h->succedents[i]->dagHdr != newptr)
675 rf_RecurResetDAGHeaderPointers(dag_h->succedents[i], newptr);
690 rf_PrintDAGList(RF_DagHeader_t * dag_h)
694 for (; dag_h; dag_h = dag_h->next) {
695 rf_AssignNodeNums(dag_h);
697 rf_PrintDAG(dag_h);
808 rf_ValidateDAG(RF_DagHeader_t *dag_h)
818 rf_ValidateVisitedBits(dag_h);
820 if (dag_h->numNodesCompleted != 0) {
821 printf("INVALID DAG: num nodes completed is %d, should be 0\n", dag_h->numNodesCompleted);
825 if (dag_h->status != rf_enable) {
830 if (dag_h->numCommits != 0) {
831 printf("INVALID DAG: numCommits != 0 (%d)\n", dag_h->numCommits);
835 if (dag_h->numSuccedents != 1) {
837 printf("INVALID DAG: numSuccedents !1 (%d)\n", dag_h->numSuccedents);
841 nodecount = rf_AssignNodeNums(dag_h);
843 unvisited = dag_h->succedents[0]->visited;
848 for (i = 0; i < dag_h->numSuccedents; i++) {
849 if ((dag_h->succedents[i]->visited == unvisited)
850 && rf_ValidateBranch(dag_h->succedents[i], scount,
883 if (dag_h->numCommitNodes != commitNodeCount) {
885 dag_h->numCommitNodes, commitNodeCount);
894 rf_PrintDAGList(dag_h);
897 rf_ValidateVisitedBits(dag_h);
902 rf_PrintDAGList(dag_h);
971 * dag_h - in: header of the dag to create
980 RF_DagHeader_t *dag_h,
997 *sosBuffer = rf_AllocStripeBuffer(raidPtr, dag_h, rf_RaidAddressToByte(raidPtr, sosNumSector));
999 new_asm_h[0]->next = dag_h->asmList;
1000 dag_h->asmList = new_asm_h[0];
1013 *eosBuffer = rf_AllocStripeBuffer(raidPtr, dag_h, rf_RaidAddressToByte(raidPtr, eosNumSector));
1015 new_asm_h[1]->next = dag_h->asmList;
1016 dag_h->asmList = new_asm_h[1];
1066 /* in: dag_h - header of the DAG we're going to create */
1073 RF_DagHeader_t *dag_h,
1110 new_asm_h[0]->next = dag_h->asmList;
1111 dag_h->asmList = new_asm_h[0];
1114 pda->bufPtr = rf_AllocBuffer(raidPtr, dag_h, pda->numSector << raidPtr->logBytesPerSector);
1119 new_asm_h[1]->next = dag_h->asmList;
1120 dag_h->asmList = new_asm_h[1];
1123 pda->bufPtr = rf_AllocBuffer(raidPtr, dag_h, pda->numSector << raidPtr->logBytesPerSector);
1130 *rpBufPtr = rf_AllocBuffer(raidPtr, dag_h, failedPDA->numSector << raidPtr->logBytesPerSector);