Lines Matching refs:pPriorClass

1315  * all the chunks for @a pPriorClass.
1319 * @param pPriorClass The class to search for.
1321 static bool rtLockValidatorClassIsPriorClassByLinearSearch(RTLOCKVALCLASSINT *pClass, RTLOCKVALCLASSINT *pPriorClass)
1326 if (pChunk->aRefs[i].hClass == pPriorClass)
1336 PRTLOCKVALCLASSREF *ppHashEntry = &pClass->apPriorLocksHash[RTLOCKVALCLASS_HASH(pPriorClass)];
1353 * Checks if @a pPriorClass is a known prior class.
1357 * @param pPriorClass The class to search for.
1359 DECL_FORCE_INLINE(bool) rtLockValidatorClassIsPriorClass(RTLOCKVALCLASSINT *pClass, RTLOCKVALCLASSINT *pPriorClass)
1364 PRTLOCKVALCLASSREF pRef = pClass->apPriorLocksHash[RTLOCKVALCLASS_HASH(pPriorClass)];
1366 && pRef->hClass == pPriorClass)
1377 return rtLockValidatorClassIsPriorClassByLinearSearch(pClass, pPriorClass);
1386 * @param pPriorClass The class to add.
1391 static int rtLockValidatorClassAddPriorClass(RTLOCKVALCLASSINT *pClass, RTLOCKVALCLASSINT *pPriorClass,
1403 if (!rtLockValidatorClassIsPriorClass(pPriorClass, pClass))
1405 if (!rtLockValidatorClassIsPriorClass(pClass, pPriorClass))
1415 ASMAtomicCmpXchgHandle(&pChunk->aRefs[i].hClass, pPriorClass, NIL_RTLOCKVALCLASS, fDone);
1419 rtLockValidatorClassRetain(pPriorClass);
1447 pNew->aRefs[0].hClass = pPriorClass;
1451 rtLockValidatorClassRetain(pPriorClass);
1475 RTLOCKVALCLASSINT *pPriorClass = hPriorClass;
1476 AssertPtrReturn(pPriorClass, VERR_INVALID_HANDLE);
1477 AssertReturn(pPriorClass->u32Magic == RTLOCKVALCLASS_MAGIC, VERR_INVALID_HANDLE);
1479 return rtLockValidatorClassAddPriorClass(pClass, pPriorClass, false /*fAutodidacticism*/, NULL);
2244 RTLOCKVALCLASSINT *pPriorClass = rtLockValidatorRecGetClassesAndDown(pCur, &uPriorSubClass, &pDown);
2245 if (pPriorClass != NIL_RTLOCKVALCLASS)
2247 AssertPtrReturn(pPriorClass, VERR_SEM_LV_INTERNAL_ERROR);
2248 AssertReturn(pPriorClass->u32Magic == RTLOCKVALCLASS_MAGIC, VERR_SEM_LV_INTERNAL_ERROR);
2249 if (!rtLockValidatorIsClassOrderOk(pClass, uSubClass, pPriorClass, uPriorSubClass))
2251 if ( pClass == pPriorClass
2252 || rtLockValidatorClassIsPriorClass(pPriorClass, pClass))
2254 pRec, pCur, pClass, pPriorClass);
2296 RTLOCKVALCLASSINT *pPriorClass = rtLockValidatorRecGetClassesAndDown(pCur, &uPriorSubClass, &pDown);
2297 if (pPriorClass != NIL_RTLOCKVALCLASS)
2299 if (!rtLockValidatorIsClassOrderOk(pClass, uSubClass, pPriorClass, uPriorSubClass))
2301 if ( pClass == pPriorClass
2302 || rtLockValidatorClassIsPriorClass(pPriorClass, pClass))
2307 pRec, pCur, pClass, pPriorClass);
2325 RTLOCKVALCLASSINT *pPriorClass = rtLockValidatorRecGetClassesAndDown(pCur, &uPriorSubClass, &pDown);
2326 if (pPriorClass != NIL_RTLOCKVALCLASS)
2328 if (!rtLockValidatorIsClassOrderOk(pClass, uSubClass, pPriorClass, uPriorSubClass))
2330 Assert( pClass != pPriorClass
2331 && !rtLockValidatorClassIsPriorClass(pPriorClass, pClass));
2332 int rc = rtLockValidatorClassAddPriorClass(pClass, pPriorClass, true /*fAutodidacticism*/, pSrcPos);
2338 Assert(rtLockValidatorClassIsPriorClass(pClass, pPriorClass));
2395 RTLOCKVALCLASSINT *pPriorClass = rtLockValidatorRecGetClassesAndDown(pCur, &uPriorSubClass, &pDown);
2396 if (pPriorClass != NIL_RTLOCKVALCLASS)
2398 AssertPtrReturn(pPriorClass, VERR_SEM_LV_INTERNAL_ERROR);
2399 AssertReturn(pPriorClass->u32Magic == RTLOCKVALCLASS_MAGIC, VERR_SEM_LV_INTERNAL_ERROR);
2400 if (RT_UNLIKELY(!rtLockValidatorIsClassOrderOk(pClass, uSubClass, pPriorClass, uPriorSubClass)))
2402 pPriorClass, pCur, pDown);