Lines Matching refs:pTrigger

145 SyncDeleteTriggerFromSyncObject(SyncTrigger * pTrigger)  in SyncDeleteTriggerFromSyncObject()  argument
153 if (!pTrigger->pSync) in SyncDeleteTriggerFromSyncObject()
157 pCur = pTrigger->pSync->pTriglist; in SyncDeleteTriggerFromSyncObject()
160 if (pCur->pTrigger == pTrigger) { in SyncDeleteTriggerFromSyncObject()
164 pTrigger->pSync->pTriglist = pCur->next; in SyncDeleteTriggerFromSyncObject()
174 if (SYNC_COUNTER == pTrigger->pSync->type) { in SyncDeleteTriggerFromSyncObject()
175 pCounter = (SyncCounter *) pTrigger->pSync; in SyncDeleteTriggerFromSyncObject()
180 else if (SYNC_FENCE == pTrigger->pSync->type) { in SyncDeleteTriggerFromSyncObject()
181 SyncFence *pFence = (SyncFence *) pTrigger->pSync; in SyncDeleteTriggerFromSyncObject()
183 pFence->funcs.DeleteTrigger(pTrigger); in SyncDeleteTriggerFromSyncObject()
188 SyncAddTriggerToSyncObject(SyncTrigger * pTrigger) in SyncAddTriggerToSyncObject() argument
193 if (!pTrigger->pSync) in SyncAddTriggerToSyncObject()
197 for (pCur = pTrigger->pSync->pTriglist; pCur; pCur = pCur->next) { in SyncAddTriggerToSyncObject()
198 if (pCur->pTrigger == pTrigger) in SyncAddTriggerToSyncObject()
205 pCur->pTrigger = pTrigger; in SyncAddTriggerToSyncObject()
206 pCur->next = pTrigger->pSync->pTriglist; in SyncAddTriggerToSyncObject()
207 pTrigger->pSync->pTriglist = pCur; in SyncAddTriggerToSyncObject()
209 if (SYNC_COUNTER == pTrigger->pSync->type) { in SyncAddTriggerToSyncObject()
210 pCounter = (SyncCounter *) pTrigger->pSync; in SyncAddTriggerToSyncObject()
215 else if (SYNC_FENCE == pTrigger->pSync->type) { in SyncAddTriggerToSyncObject()
216 SyncFence *pFence = (SyncFence *) pTrigger->pSync; in SyncAddTriggerToSyncObject()
218 pFence->funcs.AddTrigger(pTrigger); in SyncAddTriggerToSyncObject()
240 SyncCheckTriggerPositiveComparison(SyncTrigger * pTrigger, int64_t oldval) in SyncCheckTriggerPositiveComparison() argument
246 if (!SyncCheckWarnIsCounter(pTrigger->pSync, WARN_INVALID_COUNTER_COMPARE)) in SyncCheckTriggerPositiveComparison()
249 pCounter = (SyncCounter *) pTrigger->pSync; in SyncCheckTriggerPositiveComparison()
251 return pCounter == NULL || pCounter->value >= pTrigger->test_value; in SyncCheckTriggerPositiveComparison()
255 SyncCheckTriggerNegativeComparison(SyncTrigger * pTrigger, int64_t oldval) in SyncCheckTriggerNegativeComparison() argument
261 if (!SyncCheckWarnIsCounter(pTrigger->pSync, WARN_INVALID_COUNTER_COMPARE)) in SyncCheckTriggerNegativeComparison()
264 pCounter = (SyncCounter *) pTrigger->pSync; in SyncCheckTriggerNegativeComparison()
266 return pCounter == NULL || pCounter->value <= pTrigger->test_value; in SyncCheckTriggerNegativeComparison()
270 SyncCheckTriggerPositiveTransition(SyncTrigger * pTrigger, int64_t oldval) in SyncCheckTriggerPositiveTransition() argument
276 if (!SyncCheckWarnIsCounter(pTrigger->pSync, WARN_INVALID_COUNTER_COMPARE)) in SyncCheckTriggerPositiveTransition()
279 pCounter = (SyncCounter *) pTrigger->pSync; in SyncCheckTriggerPositiveTransition()
282 (oldval < pTrigger->test_value && in SyncCheckTriggerPositiveTransition()
283 pCounter->value >= pTrigger->test_value)); in SyncCheckTriggerPositiveTransition()
287 SyncCheckTriggerNegativeTransition(SyncTrigger * pTrigger, int64_t oldval) in SyncCheckTriggerNegativeTransition() argument
293 if (!SyncCheckWarnIsCounter(pTrigger->pSync, WARN_INVALID_COUNTER_COMPARE)) in SyncCheckTriggerNegativeTransition()
296 pCounter = (SyncCounter *) pTrigger->pSync; in SyncCheckTriggerNegativeTransition()
299 (oldval > pTrigger->test_value && in SyncCheckTriggerNegativeTransition()
300 pCounter->value <= pTrigger->test_value)); in SyncCheckTriggerNegativeTransition()
304 SyncCheckTriggerFence(SyncTrigger * pTrigger, int64_t unused) in SyncCheckTriggerFence() argument
306 SyncFence *pFence = (SyncFence *) pTrigger->pSync; in SyncCheckTriggerFence()
314 SyncInitTrigger(ClientPtr client, SyncTrigger * pTrigger, XID syncObject, in SyncInitTrigger() argument
317 SyncObject *pSync = pTrigger->pSync; in SyncInitTrigger()
332 if (pSync != pTrigger->pSync) { /* new counter for trigger */ in SyncInitTrigger()
333 SyncDeleteTriggerFromSyncObject(pTrigger); in SyncInitTrigger()
334 pTrigger->pSync = pSync; in SyncInitTrigger()
351 if (pTrigger->value_type != XSyncRelative && in SyncInitTrigger()
352 pTrigger->value_type != XSyncAbsolute) { in SyncInitTrigger()
353 client->errorValue = pTrigger->value_type; in SyncInitTrigger()
361 pTrigger->CheckTrigger = SyncCheckTriggerFence; in SyncInitTrigger()
366 switch (pTrigger->test_type) { in SyncInitTrigger()
368 pTrigger->CheckTrigger = SyncCheckTriggerPositiveTransition; in SyncInitTrigger()
371 pTrigger->CheckTrigger = SyncCheckTriggerNegativeTransition; in SyncInitTrigger()
374 pTrigger->CheckTrigger = SyncCheckTriggerPositiveComparison; in SyncInitTrigger()
377 pTrigger->CheckTrigger = SyncCheckTriggerNegativeComparison; in SyncInitTrigger()
380 client->errorValue = pTrigger->test_type; in SyncInitTrigger()
387 if (pTrigger->value_type == XSyncAbsolute) in SyncInitTrigger()
388 pTrigger->test_value = pTrigger->wait_value; in SyncInitTrigger()
395 overflow = checked_int64_add(&pTrigger->test_value, in SyncInitTrigger()
396 pCounter->value, pTrigger->wait_value); in SyncInitTrigger()
398 client->errorValue = pTrigger->wait_value >> 32; in SyncInitTrigger()
408 if ((rc = SyncAddTriggerToSyncObject(pTrigger)) != Success) in SyncInitTrigger()
427 SyncTrigger *pTrigger = &pAlarm->trigger; in SyncSendAlarmNotifyEvents() local
430 if (!SyncCheckWarnIsCounter(pTrigger->pSync, WARN_INVALID_COUNTER_ALARM)) in SyncSendAlarmNotifyEvents()
433 pCounter = (SyncCounter *) pTrigger->pSync; in SyncSendAlarmNotifyEvents()
441 .alarm_value_hi = pTrigger->test_value >> 32, in SyncSendAlarmNotifyEvents()
442 .alarm_value_lo = pTrigger->test_value, in SyncSendAlarmNotifyEvents()
447 if (pTrigger->pSync && SYNC_COUNTER == pTrigger->pSync->type) { in SyncSendAlarmNotifyEvents()
482 SyncTrigger *pTrigger = &(*ppAwait)->trigger; in SyncSendCounterNotifyEvents() local
486 pev->counter = pTrigger->pSync->id; in SyncSendCounterNotifyEvents()
487 pev->wait_value_lo = pTrigger->test_value; in SyncSendCounterNotifyEvents()
488 pev->wait_value_hi = pTrigger->test_value >> 32; in SyncSendCounterNotifyEvents()
489 if (SYNC_COUNTER == pTrigger->pSync->type) { in SyncSendCounterNotifyEvents()
490 SyncCounter *pCounter = (SyncCounter *) pTrigger->pSync; in SyncSendCounterNotifyEvents()
502 pev->destroyed = pTrigger->pSync->beingDestroyed; in SyncSendCounterNotifyEvents()
513 SyncAlarmCounterDestroyed(SyncTrigger * pTrigger) in SyncAlarmCounterDestroyed() argument
515 SyncAlarm *pAlarm = (SyncAlarm *) pTrigger; in SyncAlarmCounterDestroyed()
519 pTrigger->pSync = NULL; in SyncAlarmCounterDestroyed()
526 SyncAlarmTriggerFired(SyncTrigger * pTrigger) in SyncAlarmTriggerFired() argument
528 SyncAlarm *pAlarm = (SyncAlarm *) pTrigger; in SyncAlarmTriggerFired()
532 if (!SyncCheckWarnIsCounter(pTrigger->pSync, WARN_INVALID_COUNTER_ALARM)) in SyncAlarmTriggerFired()
535 pCounter = (SyncCounter *) pTrigger->pSync; in SyncAlarmTriggerFired()
565 paCounter = (SyncCounter *) pTrigger->pSync; in SyncAlarmTriggerFired()
601 pTrigger->test_value = new_test_value; in SyncAlarmTriggerFired()
610 SyncAwaitTriggerFired(SyncTrigger * pTrigger) in SyncAwaitTriggerFired() argument
612 SyncAwait *pAwait = (SyncAwait *) pTrigger; in SyncAwaitTriggerFired()
721 if ((*ptl->pTrigger->CheckTrigger) (ptl->pTrigger, oldval)) in SyncChangeCounter()
722 (*ptl->pTrigger->TriggerFired) (ptl->pTrigger); in SyncChangeCounter()
1022 SyncTrigger *pTrigger; in SyncComputeBracketValues() local
1040 pTrigger = pCur->pTrigger; in SyncComputeBracketValues()
1042 if (pTrigger->test_type == XSyncPositiveComparison && in SyncComputeBracketValues()
1044 if (pCounter->value < pTrigger->test_value && in SyncComputeBracketValues()
1045 pTrigger->test_value < psci->bracket_greater) { in SyncComputeBracketValues()
1046 psci->bracket_greater = pTrigger->test_value; in SyncComputeBracketValues()
1049 else if (pCounter->value > pTrigger->test_value && in SyncComputeBracketValues()
1050 pTrigger->test_value > psci->bracket_less) { in SyncComputeBracketValues()
1051 psci->bracket_less = pTrigger->test_value; in SyncComputeBracketValues()
1055 else if (pTrigger->test_type == XSyncNegativeComparison && in SyncComputeBracketValues()
1057 if (pCounter->value > pTrigger->test_value && in SyncComputeBracketValues()
1058 pTrigger->test_value > psci->bracket_less) { in SyncComputeBracketValues()
1059 psci->bracket_less = pTrigger->test_value; in SyncComputeBracketValues()
1062 else if (pCounter->value < pTrigger->test_value && in SyncComputeBracketValues()
1063 pTrigger->test_value < psci->bracket_greater) { in SyncComputeBracketValues()
1064 psci->bracket_greater = pTrigger->test_value; in SyncComputeBracketValues()
1068 else if (pTrigger->test_type == XSyncNegativeTransition && in SyncComputeBracketValues()
1070 if (pCounter->value >= pTrigger->test_value && in SyncComputeBracketValues()
1071 pTrigger->test_value > psci->bracket_less) { in SyncComputeBracketValues()
1077 psci->bracket_less = pTrigger->test_value; in SyncComputeBracketValues()
1080 else if (pCounter->value < pTrigger->test_value && in SyncComputeBracketValues()
1081 pTrigger->test_value < psci->bracket_greater) { in SyncComputeBracketValues()
1082 psci->bracket_greater = pTrigger->test_value; in SyncComputeBracketValues()
1086 else if (pTrigger->test_type == XSyncPositiveTransition && in SyncComputeBracketValues()
1088 if (pCounter->value <= pTrigger->test_value && in SyncComputeBracketValues()
1089 pTrigger->test_value < psci->bracket_greater) { in SyncComputeBracketValues()
1096 psci->bracket_greater = pTrigger->test_value; in SyncComputeBracketValues()
1099 else if (pCounter->value > pTrigger->test_value && in SyncComputeBracketValues()
1100 pTrigger->test_value > psci->bracket_less) { in SyncComputeBracketValues()
1101 psci->bracket_less = pTrigger->test_value; in SyncComputeBracketValues()
1152 (*ptl->pTrigger->CounterDestroyed) (ptl->pTrigger); in FreeCounter()
1685 SyncTrigger *pTrigger; in ProcSyncCreateAlarm() local
1703 pTrigger = &pAlarm->trigger; in ProcSyncCreateAlarm()
1704 pTrigger->pSync = NULL; in ProcSyncCreateAlarm()
1705 pTrigger->value_type = XSyncAbsolute; in ProcSyncCreateAlarm()
1706 pTrigger->wait_value = 0; in ProcSyncCreateAlarm()
1707 pTrigger->test_type = XSyncPositiveComparison; in ProcSyncCreateAlarm()
1708 pTrigger->TriggerFired = SyncAlarmTriggerFired; in ProcSyncCreateAlarm()
1709 pTrigger->CounterDestroyed = SyncAlarmCounterDestroyed; in ProcSyncCreateAlarm()
1710 status = SyncInitTrigger(client, pTrigger, None, RTCounter, in ProcSyncCreateAlarm()
1737 if (!pTrigger->pSync) { in ProcSyncCreateAlarm()
1743 if (!SyncCheckWarnIsCounter(pTrigger->pSync, in ProcSyncCreateAlarm()
1749 pCounter = (SyncCounter *) pTrigger->pSync; in ProcSyncCreateAlarm()
1751 if ((*pTrigger->CheckTrigger) (pTrigger, pCounter->value)) in ProcSyncCreateAlarm()
1752 (*pTrigger->TriggerFired) (pTrigger); in ProcSyncCreateAlarm()
1808 SyncTrigger *pTrigger; in ProcSyncQueryAlarm() local
1818 pTrigger = &pAlarm->trigger; in ProcSyncQueryAlarm()
1824 .counter = (pTrigger->pSync) ? pTrigger->pSync->id : None, in ProcSyncQueryAlarm()
1830 .value_type = pTrigger->value_type, in ProcSyncQueryAlarm()
1831 .wait_value_hi = pTrigger->wait_value >> 32, in ProcSyncQueryAlarm()
1832 .wait_value_lo = pTrigger->wait_value, in ProcSyncQueryAlarm()
1835 .wait_value_hi = pTrigger->test_value >> 32, in ProcSyncQueryAlarm()
1836 .wait_value_lo = pTrigger->test_value, in ProcSyncQueryAlarm()
1839 .test_type = pTrigger->test_type, in ProcSyncQueryAlarm()
2693 trig = list->pTrigger; in IdleTimeBlockHandler()
2722 trig = list->pTrigger; in IdleTimeBlockHandler()