if( get_sem_info( cvar->isem, &semInfo ) != B_NO_ERROR ) return PR_FAILURE;
if( atomic_add( &cvar->signalBenCount, 1 ) > 0 ) { if (acquire_sem(cvar->signalSem) == B_INTERRUPTED) { atomic_add( &cvar->signalBenCount, -1 ); return PR_FAILURE; } }
PR_IMPLEMENT(PRStatus)    PR_NotifyAllCondVar (PRCondVar *cvar){    sem_info semInfo;    if( get_sem_info( cvar->isem, &semInfo ) != B_NO_ERROR )	return PR_FAILURE;    if( release_sem_etc( cvar->isem, semInfo.count, 0 ) != B_NO_ERROR )	return PR_FAILURE;    return PR_SUCCESS;}