Lines Matching refs:node
75 RF_DagNode_t *node, in rf_InitNode() argument
79 int (*undoFunc) (RF_DagNode_t *node), in rf_InitNode()
80 int (*wakeFunc) (RF_DagNode_t *node, int), in rf_InitNode()
95 node->status = initstatus; in rf_InitNode()
96 node->commitNode = commit; in rf_InitNode()
97 node->doFunc = doFunc; in rf_InitNode()
98 node->undoFunc = undoFunc; in rf_InitNode()
99 node->wakeFunc = wakeFunc; in rf_InitNode()
100 node->numParams = nParam; in rf_InitNode()
101 node->numResults = nResult; in rf_InitNode()
102 node->numAntecedents = nAnte; in rf_InitNode()
103 node->numAntDone = 0; in rf_InitNode()
104 node->next = NULL; in rf_InitNode()
105 node->numSuccedents = nSucc; in rf_InitNode()
106 node->name = name; in rf_InitNode()
107 node->dagHdr = hdr; in rf_InitNode()
108 node->visited = 0; in rf_InitNode()
125 ptrs = (void **) node->dag_ptrs; in rf_InitNode()
129 node->succedents = (nSucc) ? (RF_DagNode_t **) ptrs : NULL; in rf_InitNode()
130 node->antecedents = (nAnte) ? (RF_DagNode_t **) (ptrs + nSucc) : NULL; in rf_InitNode()
131 node->results = (nResult) ? (void **) (ptrs + nSucc + nAnte) : NULL; in rf_InitNode()
132 node->propList = (nSucc) ? (RF_PropHeader_t **) in rf_InitNode()
137 node->params = (RF_DagParam_t *) node->dag_params; in rf_InitNode()
139 RF_CallocAndAdd(node->params, nParam, in rf_InitNode()
143 node->params = NULL; in rf_InitNode()
280 rf_NodeStatusString(RF_DagNode_t *node) in rf_NodeStatusString() argument
282 switch (node->status) { in rf_NodeStatusString()
297 rf_PrintNodeInfoString(RF_DagNode_t *node) in rf_PrintNodeInfoString() argument
300 int (*df) (RF_DagNode_t *) = node->doFunc; in rf_PrintNodeInfoString()
307 pda = (RF_PhysDiskAddr_t *) node->params[0].p; in rf_PrintNodeInfoString()
308 bufPtr = (void *) node->params[1].p; in rf_PrintNodeInfoString()
309 lk = RF_EXTRACT_LOCK_FLAG(node->params[3].v); in rf_PrintNodeInfoString()
310 unlk = RF_EXTRACT_UNLOCK_FLAG(node->params[3].v); in rf_PrintNodeInfoString()
318 pda = (RF_PhysDiskAddr_t *) node->params[0].p; in rf_PrintNodeInfoString()
319 lk = RF_EXTRACT_LOCK_FLAG(node->params[3].v); in rf_PrintNodeInfoString()
320 unlk = RF_EXTRACT_UNLOCK_FLAG(node->params[3].v); in rf_PrintNodeInfoString()
328 printf("result buf 0x%lx\n", (long) node->results[0]); in rf_PrintNodeInfoString()
329 for (i = 0; i < node->numParams - 1; i += 2) { in rf_PrintNodeInfoString()
330 pda = (RF_PhysDiskAddr_t *) node->params[i].p; in rf_PrintNodeInfoString()
331 bufPtr = (RF_PhysDiskAddr_t *) node->params[i + 1].p; in rf_PrintNodeInfoString()
340 for (i = 0; i < node->numParams - 1; i += 2) { in rf_PrintNodeInfoString()
341 pda = (RF_PhysDiskAddr_t *) node->params[i].p; in rf_PrintNodeInfoString()
342 bufPtr = (RF_PhysDiskAddr_t *) node->params[i + 1].p; in rf_PrintNodeInfoString()
359 rf_RecurPrintDAG(RF_DagNode_t *node, int depth, int unvisited) in rf_RecurPrintDAG() argument
364 node->visited = (unvisited) ? 0 : 1; in rf_RecurPrintDAG()
366 node->nodeNum, node->commitNode, node->name, in rf_RecurPrintDAG()
367 rf_NodeStatusString(node), node->numSuccedents, in rf_RecurPrintDAG()
368 node->numSuccFired, node->numSuccDone, in rf_RecurPrintDAG()
369 node->numAntecedents, node->numAntDone, in rf_RecurPrintDAG()
370 node->numParams, node->numResults); in rf_RecurPrintDAG()
371 for (i = 0; i < node->numSuccedents; i++) { in rf_RecurPrintDAG()
372 printf("%d%s", node->succedents[i]->nodeNum, in rf_RecurPrintDAG()
373 ((i == node->numSuccedents - 1) ? "\0" : " ")); in rf_RecurPrintDAG()
376 for (i = 0; i < node->numAntecedents; i++) { in rf_RecurPrintDAG()
377 switch (node->antType[i]) { in rf_RecurPrintDAG()
394 printf("%d(%s)%s", node->antecedents[i]->nodeNum, anttype, in rf_RecurPrintDAG()
395 (i == node->numAntecedents - 1) ? "\0" : " "); in rf_RecurPrintDAG()
398 rf_PrintNodeInfoString(node); in rf_RecurPrintDAG()
399 for (i = 0; i < node->numSuccedents; i++) { in rf_RecurPrintDAG()
400 if (node->succedents[i]->visited == unvisited) in rf_RecurPrintDAG()
401 rf_RecurPrintDAG(node->succedents[i], depth + 1, in rf_RecurPrintDAG()
452 RF_DagNode_t *node; in rf_AssignNodeNums() local
459 node = dag_h->succedents[i]; in rf_AssignNodeNums()
460 if (node->visited == unvisited) { in rf_AssignNodeNums()
469 rf_RecurAssignNodeNums(RF_DagNode_t *node, int num, int unvisited) in rf_RecurAssignNodeNums() argument
473 node->visited = (unvisited) ? 0 : 1; in rf_RecurAssignNodeNums()
475 node->nodeNum = num++; in rf_RecurAssignNodeNums()
476 for (i = 0; i < node->numSuccedents; i++) { in rf_RecurAssignNodeNums()
477 if (node->succedents[i]->visited == unvisited) { in rf_RecurAssignNodeNums()
478 num = rf_RecurAssignNodeNums(node->succedents[i], in rf_RecurAssignNodeNums()
498 rf_RecurResetDAGHeaderPointers(RF_DagNode_t *node, RF_DagHeader_t *newptr) in rf_RecurResetDAGHeaderPointers() argument
502 node->dagHdr = newptr; in rf_RecurResetDAGHeaderPointers()
503 for (i = 0; i < node->numSuccedents; i++) in rf_RecurResetDAGHeaderPointers()
504 if (node->succedents[i]->dagHdr != newptr) in rf_RecurResetDAGHeaderPointers()
505 rf_RecurResetDAGHeaderPointers(node->succedents[i], in rf_RecurResetDAGHeaderPointers()
522 rf_ValidateBranch(RF_DagNode_t *node, int *scount, int *acount, in rf_ValidateBranch() argument
528 node->visited = (unvisited) ? 0 : 1; in rf_ValidateBranch()
529 nodes[node->nodeNum] = node; in rf_ValidateBranch()
531 if (node->next != NULL) { in rf_ValidateBranch()
535 if (node->status != rf_wait) { in rf_ValidateBranch()
539 if (node->numAntDone != 0) { in rf_ValidateBranch()
543 if (node->doFunc == rf_TerminateFunc) { in rf_ValidateBranch()
544 if (node->numSuccedents != 0) { in rf_ValidateBranch()
550 if (node->numSuccedents == 0) { in rf_ValidateBranch()
556 for (i = 0; i < node->numSuccedents; i++) { in rf_ValidateBranch()
557 if (!node->succedents[i]) { in rf_ValidateBranch()
559 " is NULL.\n", i, node->name); in rf_ValidateBranch()
562 scount[node->succedents[i]->nodeNum]++; in rf_ValidateBranch()
564 for (i = 0; i < node->numAntecedents; i++) { in rf_ValidateBranch()
565 if (!node->antecedents[i]) { in rf_ValidateBranch()
567 " NULL.\n", i, node->name); in rf_ValidateBranch()
570 acount[node->antecedents[i]->nodeNum]++; in rf_ValidateBranch()
572 for (i = 0; i < node->numSuccedents; i++) { in rf_ValidateBranch()
573 if (node->succedents[i]->visited == unvisited) { in rf_ValidateBranch()
574 if (rf_ValidateBranch(node->succedents[i], scount, in rf_ValidateBranch()
584 rf_ValidateBranchVisitedBits(RF_DagNode_t *node, int unvisited, int rl) in rf_ValidateBranchVisitedBits() argument
588 RF_ASSERT(node->visited == unvisited); in rf_ValidateBranchVisitedBits()
589 for (i = 0; i < node->numSuccedents; i++) { in rf_ValidateBranchVisitedBits()
590 if (node->succedents[i] == NULL) { in rf_ValidateBranchVisitedBits()
592 (long) node, i); in rf_ValidateBranchVisitedBits()
595 rf_ValidateBranchVisitedBits(node->succedents[i], in rf_ValidateBranchVisitedBits()
1263 rf_SelectMirrorDiskIdle(RF_DagNode_t *node) in rf_SelectMirrorDiskIdle() argument
1265 RF_Raid_t *raidPtr = (RF_Raid_t *) node->dagHdr->raidPtr; in rf_SelectMirrorDiskIdle()
1268 RF_PhysDiskAddr_t *data_pda = (RF_PhysDiskAddr_t *) node->params[0].p; in rf_SelectMirrorDiskIdle()
1269 RF_PhysDiskAddr_t *mirror_pda = (RF_PhysDiskAddr_t *) node->params[4].p; in rf_SelectMirrorDiskIdle()
1330 node->params[0].p = mirror_pda; in rf_SelectMirrorDiskIdle()
1331 node->params[4].p = tmp_pda; in rf_SelectMirrorDiskIdle()
1344 rf_SelectMirrorDiskPartition(RF_DagNode_t *node) in rf_SelectMirrorDiskPartition() argument
1346 RF_Raid_t *raidPtr = (RF_Raid_t *) node->dagHdr->raidPtr; in rf_SelectMirrorDiskPartition()
1348 RF_PhysDiskAddr_t *data_pda = (RF_PhysDiskAddr_t *) node->params[0].p; in rf_SelectMirrorDiskPartition()
1349 RF_PhysDiskAddr_t *mirror_pda = (RF_PhysDiskAddr_t *) node->params[4].p; in rf_SelectMirrorDiskPartition()
1384 node->params[0].p = mirror_pda; in rf_SelectMirrorDiskPartition()
1385 node->params[4].p = tmp_pda; in rf_SelectMirrorDiskPartition()