Lines Matching defs:smp

89 sfxge_mcdi_acquire(sfxge_mcdi_t *smp)
91 mutex_enter(&(smp->sm_lock));
92 ASSERT3U(smp->sm_state, !=, SFXGE_MCDI_UNINITIALIZED);
94 while (smp->sm_state != SFXGE_MCDI_INITIALIZED) {
95 (void) cv_wait(&(smp->sm_kv), &(smp->sm_lock));
97 smp->sm_state = SFXGE_MCDI_BUSY;
99 mutex_exit(&(smp->sm_lock));
105 sfxge_mcdi_release(sfxge_mcdi_t *smp)
107 mutex_enter(&(smp->sm_lock));
108 ASSERT((smp->sm_state == SFXGE_MCDI_BUSY) ||
109 (smp->sm_state == SFXGE_MCDI_COMPLETED));
111 smp->sm_state = SFXGE_MCDI_INITIALIZED;
112 cv_broadcast(&(smp->sm_kv));
114 mutex_exit(&(smp->sm_lock));
168 sfxge_mcdi_t *smp = &(sp->s_mcdi);
170 sfxge_mcdi_acquire(smp);
176 sfxge_mcdi_release(smp);
184 sfxge_mcdi_t *smp = &(sp->s_mcdi);
186 mutex_enter(&(smp->sm_lock));
187 ASSERT(smp->sm_state == SFXGE_MCDI_BUSY);
188 smp->sm_state = SFXGE_MCDI_COMPLETED;
189 cv_broadcast(&(smp->sm_kv));
190 mutex_exit(&(smp->sm_lock));
274 sfxge_mcdi_t *smp = &(sp->s_mcdi);
275 efsys_mem_t *esmp = &(smp->sm_mem);
276 efx_mcdi_transport_t *emtp = &(smp->sm_emt);
281 ASSERT3U(smp->sm_state, ==, SFXGE_MCDI_UNINITIALIZED);
299 mutex_init(&(smp->sm_lock), NULL, MUTEX_DRIVER, NULL);
301 smp->sm_state = SFXGE_MCDI_INITIALIZED;
312 cv_init(&(smp->sm_kv), NULL, CV_DRIVER, NULL);
322 cv_destroy(&(smp->sm_kv));
323 mutex_destroy(&(smp->sm_lock));
327 smp->sm_state = SFXGE_MCDI_UNINITIALIZED;
328 smp->sm_sp = NULL;
329 SFXGE_OBJ_CHECK(smp, sfxge_mcdi_t);
342 sfxge_mcdi_t *smp = &(sp->s_mcdi);
343 efsys_mem_t *esmp = &(smp->sm_mem);
346 mutex_enter(&(smp->sm_lock));
347 ASSERT3U(smp->sm_state, ==, SFXGE_MCDI_INITIALIZED);
350 emtp = &(smp->sm_emt);
353 smp->sm_sp = NULL;
355 cv_destroy(&(smp->sm_kv));
356 mutex_exit(&(smp->sm_lock));
360 mutex_destroy(&(smp->sm_lock));
362 smp->sm_state = SFXGE_MCDI_UNINITIALIZED;
363 SFXGE_OBJ_CHECK(smp, sfxge_mcdi_t);
371 sfxge_mcdi_t *smp = &(sp->s_mcdi);
376 if (smp->sm_state == SFXGE_MCDI_UNINITIALIZED) {
435 sfxge_mcdi_t *smp = &(sp->s_mcdi);
440 if (smp->sm_state == SFXGE_MCDI_UNINITIALIZED) {