Lines Matching refs:raidPtr
61 rf_ConfigureRAID1(RF_ShutdownList_t **listp, RF_Raid_t *raidPtr, in rf_ConfigureRAID1() argument
64 RF_RaidLayout_t *layoutPtr = &raidPtr->Layout; in rf_ConfigureRAID1()
69 if (raidPtr->numCol < 2 || raidPtr->numCol % 2 != 0) { in rf_ConfigureRAID1()
74 info = RF_MallocAndAdd(sizeof(*info), raidPtr->cleanupList); in rf_ConfigureRAID1()
80 info->stripeIdentifier = rf_make_2d_array(raidPtr->numCol / 2, 2, raidPtr->cleanupList); in rf_ConfigureRAID1()
83 for (i = 0; i < (raidPtr->numCol / 2); i++) { in rf_ConfigureRAID1()
92 …raidPtr->totalSectors = layoutPtr->stripeUnitsPerDisk * (raidPtr->numCol / 2) * layoutPtr->sectors… in rf_ConfigureRAID1()
93 layoutPtr->numStripe = layoutPtr->stripeUnitsPerDisk * (raidPtr->numCol / 2); in rf_ConfigureRAID1()
103 rf_MapSectorRAID1(RF_Raid_t *raidPtr, RF_RaidAddr_t raidSector, in rf_MapSectorRAID1() argument
107 RF_StripeNum_t SUID = raidSector / raidPtr->Layout.sectorsPerStripeUnit; in rf_MapSectorRAID1()
108 RF_RowCol_t mirrorPair = SUID % (raidPtr->numCol / 2); in rf_MapSectorRAID1()
111 …*diskSector = ((SUID / (raidPtr->numCol / 2)) * raidPtr->Layout.sectorsPerStripeUnit) + (raidSecto… in rf_MapSectorRAID1()
121 rf_MapParityRAID1(RF_Raid_t *raidPtr, RF_RaidAddr_t raidSector, in rf_MapParityRAID1() argument
125 RF_StripeNum_t SUID = raidSector / raidPtr->Layout.sectorsPerStripeUnit; in rf_MapParityRAID1()
126 RF_RowCol_t mirrorPair = SUID % (raidPtr->numCol / 2); in rf_MapParityRAID1()
130 …*diskSector = ((SUID / (raidPtr->numCol / 2)) * raidPtr->Layout.sectorsPerStripeUnit) + (raidSecto… in rf_MapParityRAID1()
139 rf_IdentifyStripeRAID1(RF_Raid_t *raidPtr, RF_RaidAddr_t addr, in rf_IdentifyStripeRAID1() argument
142 RF_StripeNum_t stripeID = rf_RaidAddressToStripeID(&raidPtr->Layout, addr); in rf_IdentifyStripeRAID1()
143 RF_Raid1ConfigInfo_t *info = raidPtr->Layout.layoutSpecificInfo; in rf_IdentifyStripeRAID1()
146 *diskids = info->stripeIdentifier[stripeID % (raidPtr->numCol / 2)]; in rf_IdentifyStripeRAID1()
176 rf_RAID1DagSelect(RF_Raid_t *raidPtr, RF_IoType_t type, in rf_RAID1DagSelect() argument
207 rstat = raidPtr->status; in rf_RAID1DagSelect()
210 rf_CheckRUReconstructed(raidPtr->reconControl->reconMap, failedPDA->startSector) : 0 in rf_RAID1DagSelect()
219 failedPDA->col = raidPtr->Disks[fcol].spareCol; in rf_RAID1DagSelect()
237 raidPtr->raidid, type, oc, in rf_RAID1DagSelect()
257 rf_VerifyParityRAID1(RF_Raid_t *raidPtr, RF_RaidAddr_t raidAddr, in rf_VerifyParityRAID1() argument
279 layoutPtr = &raidPtr->Layout; in rf_VerifyParityRAID1()
282 nbytes = rf_RaidAddressToByte(raidPtr, nsector); in rf_VerifyParityRAID1()
294 mcpair = rf_AllocMCPair(raidPtr); in rf_VerifyParityRAID1()
306 raidPtr->raidid, (long) bf, bcount, (long) bf, in rf_VerifyParityRAID1()
315 rd_dag_h = rf_MakeSimpleDAG(raidPtr, stripeWidth, nbytes, bf, in rf_VerifyParityRAID1()
327 asm_h = rf_MapAccess(raidPtr, startAddr, layoutPtr->dataSectorsPerStripe, in rf_VerifyParityRAID1()
338 rf_RangeRestrictPDA(raidPtr, parityPDA, pda, 0, 1); in rf_VerifyParityRAID1()
341 if (rf_TryToRedirectPDA(raidPtr, pda, 0)) { in rf_VerifyParityRAID1()
360 rf_RangeRestrictPDA(raidPtr, parityPDA, pda, 0, 1); in rf_VerifyParityRAID1()
362 if (rf_TryToRedirectPDA(raidPtr, pda, 0)) { in rf_VerifyParityRAID1()
382 raidPtr->raidid); in rf_VerifyParityRAID1()
427 raidPtr->raidid, nbytes, i, (long) buf1, in rf_VerifyParityRAID1()
446 printf("raid%d: RAID1: found bad parity, i=%d\n", raidPtr->raidid, i); in rf_VerifyParityRAID1()
465 printf("raid%d: RAID1 parity verify: parity not correct\n", raidPtr->raidid); in rf_VerifyParityRAID1()
477 wr_dag_h = rf_MakeSimpleDAG(raidPtr, nbad, nbytes, bf, in rf_VerifyParityRAID1()
530 rf_FreeAccessStripeMap(raidPtr, asm_h); in rf_VerifyParityRAID1()
536 rf_FreeMCPair(raidPtr, mcpair); in rf_VerifyParityRAID1()
541 raidPtr->raidid, ret); in rf_VerifyParityRAID1()
561 RF_Raid_t *raidPtr; in rf_SubmitReconBufferRAID1() local
566 raidPtr = rbuf->raidPtr; in rf_SubmitReconBufferRAID1()
567 reconCtrlPtr = raidPtr->reconControl; in rf_SubmitReconBufferRAID1()
575 raidPtr->raidid, rbuf->col, in rf_SubmitReconBufferRAID1()
587 RF_LOCK_PSS_MUTEX(raidPtr, rbuf->parityStripeID); in rf_SubmitReconBufferRAID1()
596 pssPtr = rf_LookupRUStatus(raidPtr, reconCtrlPtr->pssTable, in rf_SubmitReconBufferRAID1()
611 raidPtr->raidid); in rf_SubmitReconBufferRAID1()
619 printf("raid%d: RAID1 rbuf submission: using committed rbuf\n", raidPtr->raidid); in rf_SubmitReconBufferRAID1()
630 printf("raid%d: RAID1 rbuf submission: using floating rbuf\n", raidPtr->raidid); in rf_SubmitReconBufferRAID1()
641 printf("raid%d: RAID1 rbuf submission: waiting for rbuf\n", raidPtr->raidid); in rf_SubmitReconBufferRAID1()
645 raidPtr->procsInBufWait++; in rf_SubmitReconBufferRAID1()
646 if ((raidPtr->procsInBufWait == (raidPtr->numCol - 1)) in rf_SubmitReconBufferRAID1()
647 && (raidPtr->numFullReconBuffers == 0)) { in rf_SubmitReconBufferRAID1()
650 rf_PrintPSStatusTable(raidPtr); in rf_SubmitReconBufferRAID1()
654 cb = rf_AllocCallbackValueDesc(raidPtr); in rf_SubmitReconBufferRAID1()
692 rf_CheckForFullRbuf(raidPtr, reconCtrlPtr, pssPtr, 1); in rf_SubmitReconBufferRAID1()
695 RF_UNLOCK_PSS_MUTEX(raidPtr, rbuf->parityStripeID); in rf_SubmitReconBufferRAID1()
703 raidPtr->raidid, retcode); in rf_SubmitReconBufferRAID1()
710 rf_GetDefaultHeadSepLimitRAID1(RF_Raid_t *raidPtr) in rf_GetDefaultHeadSepLimitRAID1() argument