Lines Matching defs:reconCtrlPtr
64 RF_ReconCtrl_t *reconCtrlPtr;
76 reconCtrlPtr = RF_Malloc(sizeof(*reconCtrlPtr));
79 reconCtrlPtr->perDiskInfo = RF_Malloc(raidPtr->numCol *
80 sizeof(*reconCtrlPtr->perDiskInfo));
81 reconCtrlPtr->reconDesc = reconDesc;
82 reconCtrlPtr->fcol = fcol;
83 reconCtrlPtr->spareCol = scol;
84 reconCtrlPtr->lastPSID = layoutPtr->numStripe / layoutPtr->SUsPerPU;
85 reconCtrlPtr->percentComplete = 0;
86 reconCtrlPtr->error = 0;
87 reconCtrlPtr->pending_writes = 0;
91 reconCtrlPtr->perDiskInfo[i].reconCtrl = reconCtrlPtr;
92 reconCtrlPtr->perDiskInfo[i].col = i;
94 reconCtrlPtr->perDiskInfo[i].curPSID = -1;
95 reconCtrlPtr->perDiskInfo[i].ru_count = RUsPerPU - 1;
119 reconCtrlPtr->reconMap = rf_MakeReconMap(raidPtr, (int) (layoutPtr->SUsPerRU * layoutPtr->sectorsPerStripeUnit),
124 reconCtrlPtr->perDiskInfo[i].rbuf = (i == fcol) ? NULL : rf_MakeReconBuffer(raidPtr, i, RF_RBUF_TYPE_EXCLUSIVE);
128 rf_init_mutex2(reconCtrlPtr->eq_mutex, IPL_VM);
129 rf_init_cond2(reconCtrlPtr->eq_cv, "rfevq");
131 reconCtrlPtr->eventQueue = NULL;
132 reconCtrlPtr->eq_count = 0;
135 rf_init_mutex2(reconCtrlPtr->rb_mutex, IPL_VM);
136 rf_init_cond2(reconCtrlPtr->rb_cv, "rfrcw");
138 reconCtrlPtr->fullBufferList = NULL;
139 reconCtrlPtr->floatingRbufs = NULL;
140 reconCtrlPtr->committedRbufs = NULL;
144 rbuf->next = reconCtrlPtr->floatingRbufs;
145 reconCtrlPtr->floatingRbufs = rbuf;
149 reconCtrlPtr->pssTable = rf_MakeParityStripeStatusTable(raidPtr);
152 reconCtrlPtr->minHeadSepCounter = 0;
154 return (reconCtrlPtr);
160 RF_ReconCtrl_t *reconCtrlPtr = raidPtr->reconControl;
164 RF_ASSERT(reconCtrlPtr);
166 if (reconCtrlPtr->perDiskInfo[i].rbuf)
167 rf_FreeReconBuffer(reconCtrlPtr->perDiskInfo[i].rbuf);
169 t = reconCtrlPtr->floatingRbufs;
171 reconCtrlPtr->floatingRbufs = t->next;
173 t = reconCtrlPtr->floatingRbufs;
176 rf_destroy_mutex2(reconCtrlPtr->eq_mutex);
177 rf_destroy_cond2(reconCtrlPtr->eq_cv);
179 rf_destroy_mutex2(reconCtrlPtr->rb_mutex);
180 rf_destroy_cond2(reconCtrlPtr->rb_cv);
182 rf_FreeReconMap(reconCtrlPtr->reconMap);
183 rf_FreeParityStripeStatusTable(raidPtr, reconCtrlPtr->pssTable);
184 RF_Free(reconCtrlPtr->perDiskInfo,
186 RF_Free(reconCtrlPtr, sizeof(*reconCtrlPtr));