reconDesc 804 dev/raidframe/rf_driver.c rf_SignalQuiescenceLock(RF_Raid_t *raidPtr, RF_RaidReconDesc_t *reconDesc) reconDesc 292 dev/raidframe/rf_raid.h RF_RaidReconDesc_t *reconDesc; /* Reconstruction descriptor. */ reconDesc 289 dev/raidframe/rf_reconstruct.c RF_RaidReconDesc_t *reconDesc; reconDesc 291 dev/raidframe/rf_reconstruct.c RF_FREELIST_GET(rf_recond_freelist, reconDesc, next, reconDesc 294 dev/raidframe/rf_reconstruct.c reconDesc->raidPtr = raidPtr; reconDesc 295 dev/raidframe/rf_reconstruct.c reconDesc->row = row; reconDesc 296 dev/raidframe/rf_reconstruct.c reconDesc->col = col; reconDesc 297 dev/raidframe/rf_reconstruct.c reconDesc->spareDiskPtr = spareDiskPtr; reconDesc 298 dev/raidframe/rf_reconstruct.c reconDesc->numDisksDone = numDisksDone; reconDesc 299 dev/raidframe/rf_reconstruct.c reconDesc->srow = srow; reconDesc 300 dev/raidframe/rf_reconstruct.c reconDesc->scol = scol; reconDesc 301 dev/raidframe/rf_reconstruct.c reconDesc->state = 0; reconDesc 302 dev/raidframe/rf_reconstruct.c reconDesc->next = NULL; reconDesc 304 dev/raidframe/rf_reconstruct.c return (reconDesc); reconDesc 308 dev/raidframe/rf_reconstruct.c rf_FreeReconDesc(RF_RaidReconDesc_t *reconDesc) reconDesc 312 dev/raidframe/rf_reconstruct.c reconDesc->numReconEventWaits, reconDesc->numReconExecDelays); reconDesc 316 dev/raidframe/rf_reconstruct.c reconDesc->maxReconExecTicks); reconDesc 321 dev/raidframe/rf_reconstruct.c RF_FREELIST_FREE(rf_recond_freelist, reconDesc, next); reconDesc 373 dev/raidframe/rf_reconstruct.c RF_RaidReconDesc_t *reconDesc; reconDesc 417 dev/raidframe/rf_reconstruct.c reconDesc = rf_AllocRaidReconDesc((void *) raidPtr, row, col, reconDesc 419 dev/raidframe/rf_reconstruct.c raidPtr->reconDesc = (void *) reconDesc; reconDesc 421 dev/raidframe/rf_reconstruct.c reconDesc->hsStallCount = 0; reconDesc 422 dev/raidframe/rf_reconstruct.c reconDesc->numReconExecDelays = 0; reconDesc 423 dev/raidframe/rf_reconstruct.c reconDesc->numReconEventWaits = 0; reconDesc 425 dev/raidframe/rf_reconstruct.c reconDesc->reconExecTimerRunning = 0; reconDesc 426 dev/raidframe/rf_reconstruct.c reconDesc->reconExecTicks = 0; reconDesc 427 dev/raidframe/rf_reconstruct.c reconDesc->maxReconExecTicks = 0; reconDesc 428 dev/raidframe/rf_reconstruct.c rc = rf_ContinueReconstructFailedDisk(reconDesc); reconDesc 469 dev/raidframe/rf_reconstruct.c RF_RaidReconDesc_t *reconDesc; reconDesc 652 dev/raidframe/rf_reconstruct.c reconDesc = rf_AllocRaidReconDesc((void *) raidPtr, row, col, reconDesc 654 dev/raidframe/rf_reconstruct.c raidPtr->reconDesc = (void *) reconDesc; reconDesc 656 dev/raidframe/rf_reconstruct.c reconDesc->hsStallCount = 0; reconDesc 657 dev/raidframe/rf_reconstruct.c reconDesc->numReconExecDelays = 0; reconDesc 658 dev/raidframe/rf_reconstruct.c reconDesc->numReconEventWaits = 0; reconDesc 660 dev/raidframe/rf_reconstruct.c reconDesc->reconExecTimerRunning = 0; reconDesc 661 dev/raidframe/rf_reconstruct.c reconDesc->reconExecTicks = 0; reconDesc 662 dev/raidframe/rf_reconstruct.c reconDesc->maxReconExecTicks = 0; reconDesc 663 dev/raidframe/rf_reconstruct.c rc = rf_ContinueReconstructFailedDisk(reconDesc); reconDesc 709 dev/raidframe/rf_reconstruct.c rf_ContinueReconstructFailedDisk(RF_RaidReconDesc_t *reconDesc) reconDesc 711 dev/raidframe/rf_reconstruct.c RF_Raid_t *raidPtr = reconDesc->raidPtr; reconDesc 712 dev/raidframe/rf_reconstruct.c RF_RowCol_t row = reconDesc->row; reconDesc 713 dev/raidframe/rf_reconstruct.c RF_RowCol_t col = reconDesc->col; reconDesc 714 dev/raidframe/rf_reconstruct.c RF_RowCol_t srow = reconDesc->srow; reconDesc 715 dev/raidframe/rf_reconstruct.c RF_RowCol_t scol = reconDesc->scol; reconDesc 723 dev/raidframe/rf_reconstruct.c switch (reconDesc->state) { reconDesc 736 dev/raidframe/rf_reconstruct.c reconDesc->state = 1; reconDesc 754 dev/raidframe/rf_reconstruct.c rf_MakeReconControl(reconDesc, row, col, srow, scol); reconDesc 770 dev/raidframe/rf_reconstruct.c reconDesc->numDisksDone = 0; reconDesc 780 dev/raidframe/rf_reconstruct.c reconDesc->numDisksDone++; reconDesc 785 dev/raidframe/rf_reconstruct.c reconDesc->state = 2; reconDesc 791 dev/raidframe/rf_reconstruct.c reconDesc->state = 3; reconDesc 801 dev/raidframe/rf_reconstruct.c while (reconDesc->numDisksDone < raidPtr->numCol - 1) { reconDesc 803 dev/raidframe/rf_reconstruct.c event = rf_GetNextReconEvent(reconDesc, row, reconDesc 805 dev/raidframe/rf_reconstruct.c reconDesc); reconDesc 809 dev/raidframe/rf_reconstruct.c reconDesc->numDisksDone++; reconDesc 826 dev/raidframe/rf_reconstruct.c reconDesc->state = 4; reconDesc 841 dev/raidframe/rf_reconstruct.c event = rf_GetNextReconEvent(reconDesc, row, reconDesc 843 dev/raidframe/rf_reconstruct.c reconDesc); reconDesc 857 dev/raidframe/rf_reconstruct.c reconDesc->state = 5; reconDesc 867 dev/raidframe/rf_reconstruct.c reconDesc->state = 6; reconDesc 918 dev/raidframe/rf_reconstruct.c (int) reconDesc->hsStallCount); reconDesc 923 dev/raidframe/rf_reconstruct.c rf_FreeReconDesc(reconDesc); reconDesc 1511 dev/raidframe/rf_reconstruct.c RF_Raid_t *raidPtr = ctrl->reconCtrl->reconDesc->raidPtr; reconDesc 1677 dev/raidframe/rf_reconstruct.c ctrl->reconCtrl->reconDesc->hsStallCount++; reconDesc 188 dev/raidframe/rf_reconstruct.h RF_RaidReconDesc_t *reconDesc; reconDesc 52 dev/raidframe/rf_reconutil.c RF_RaidReconDesc_t *reconDesc, reconDesc 59 dev/raidframe/rf_reconutil.c RF_Raid_t *raidPtr = reconDesc->raidPtr; reconDesc 80 dev/raidframe/rf_reconutil.c reconCtrlPtr->reconDesc = reconDesc; reconDesc 100 dev/raidframe/rf_revent.c rf_GetNextReconEvent(RF_RaidReconDesc_t *reconDesc, RF_RowCol_t row, reconDesc 103 dev/raidframe/rf_revent.c RF_Raid_t *raidPtr = reconDesc->raidPtr; reconDesc 131 dev/raidframe/rf_revent.c if (reconDesc->reconExecTimerRunning) { reconDesc 134 dev/raidframe/rf_revent.c RF_ETIMER_STOP(reconDesc->recon_exec_timer); reconDesc 135 dev/raidframe/rf_revent.c RF_ETIMER_EVAL(reconDesc->recon_exec_timer); reconDesc 136 dev/raidframe/rf_revent.c reconDesc->reconExecTicks += reconDesc 137 dev/raidframe/rf_revent.c RF_ETIMER_VAL_US(reconDesc->recon_exec_timer); reconDesc 138 dev/raidframe/rf_revent.c if (reconDesc->reconExecTicks > reconDesc->maxReconExecTicks) reconDesc 139 dev/raidframe/rf_revent.c reconDesc->maxReconExecTicks = reconDesc 140 dev/raidframe/rf_revent.c reconDesc->reconExecTicks; reconDesc 141 dev/raidframe/rf_revent.c if (reconDesc->reconExecTicks >= MAX_RECON_EXEC_USECS) { reconDesc 144 dev/raidframe/rf_revent.c reconDesc->numReconExecDelays++; reconDesc 146 dev/raidframe/rf_revent.c status = tsleep(&reconDesc->reconExecTicks, reconDesc 149 dev/raidframe/rf_revent.c reconDesc->reconExecTicks = 0; reconDesc 154 dev/raidframe/rf_revent.c reconDesc->numReconEventWaits++; reconDesc 157 dev/raidframe/rf_revent.c reconDesc->reconExecTicks = 0; /* We've just waited. */ reconDesc 160 dev/raidframe/rf_revent.c RF_ETIMER_START(reconDesc->recon_exec_timer); reconDesc 161 dev/raidframe/rf_revent.c reconDesc->reconExecTimerRunning = 1; reconDesc 270 dev/raidframe/rf_states.c rf_SignalQuiescenceLock(raidPtr, raidPtr->reconDesc);