diff --git a/src/mesa/main/glthread.c b/src/mesa/main/glthread.c index 47353d5dd28..49c3502620e 100644 --- a/src/mesa/main/glthread.c +++ b/src/mesa/main/glthread.c @@ -55,7 +55,7 @@ glthread_unmarshal_batch(void *job, void *gdata, int thread_index) _mesa_HashLockMutex(ctx->Shared->BufferObjects); ctx->BufferObjectsLocked = true; - mtx_lock(&ctx->Shared->TexMutex); + simple_mtx_lock(&ctx->Shared->TexMutex); ctx->TexturesLocked = true; while (pos < used) { @@ -66,7 +66,7 @@ glthread_unmarshal_batch(void *job, void *gdata, int thread_index) } ctx->TexturesLocked = false; - mtx_unlock(&ctx->Shared->TexMutex); + simple_mtx_unlock(&ctx->Shared->TexMutex); ctx->BufferObjectsLocked = false; _mesa_HashUnlockMutex(ctx->Shared->BufferObjects); diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index 989d652bb15..96875b96d77 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -3387,7 +3387,7 @@ struct gl_shared_state * \todo Improve the granularity of locking. */ /*@{*/ - mtx_t TexMutex; /**< texobj thread safety */ + simple_mtx_t TexMutex; /**< texobj thread safety */ GLuint TextureStateStamp; /**< state notification for shared tex */ /*@}*/ diff --git a/src/mesa/main/shared.c b/src/mesa/main/shared.c index ac06d437d0f..f91dfd6194f 100644 --- a/src/mesa/main/shared.c +++ b/src/mesa/main/shared.c @@ -128,7 +128,7 @@ _mesa_alloc_shared_state(struct gl_context *ctx) assert(shared->DefaultTex[TEXTURE_1D_INDEX]->RefCount == 1); /* Mutex and timestamp for texobj state validation */ - mtx_init(&shared->TexMutex, mtx_recursive); + simple_mtx_init(&shared->TexMutex, mtx_plain); shared->TextureStateStamp = 0; shared->FrameBuffers = _mesa_NewHashTable(); @@ -459,7 +459,7 @@ free_shared_state(struct gl_context *ctx, struct gl_shared_state *shared) } simple_mtx_destroy(&shared->Mutex); - mtx_destroy(&shared->TexMutex); + simple_mtx_destroy(&shared->TexMutex); free(shared); } diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c index ff594b04790..10285086827 100644 --- a/src/mesa/main/texobj.c +++ b/src/mesa/main/texobj.c @@ -2161,7 +2161,7 @@ void _mesa_lock_context_textures( struct gl_context *ctx ) { if (!ctx->TexturesLocked) - mtx_lock(&ctx->Shared->TexMutex); + simple_mtx_lock(&ctx->Shared->TexMutex); if (ctx->Shared->TextureStateStamp != ctx->TextureStateTimestamp) { ctx->NewState |= _NEW_TEXTURE_OBJECT; @@ -2176,7 +2176,7 @@ _mesa_unlock_context_textures( struct gl_context *ctx ) { assert(ctx->Shared->TextureStateStamp == ctx->TextureStateTimestamp); if (!ctx->TexturesLocked) - mtx_unlock(&ctx->Shared->TexMutex); + simple_mtx_unlock(&ctx->Shared->TexMutex); } diff --git a/src/mesa/main/texobj.h b/src/mesa/main/texobj.h index 22e98d9684e..c933390af45 100644 --- a/src/mesa/main/texobj.h +++ b/src/mesa/main/texobj.h @@ -103,7 +103,7 @@ static inline void _mesa_lock_texture(struct gl_context *ctx, struct gl_texture_object *texObj) { if (!ctx->TexturesLocked) - mtx_lock(&ctx->Shared->TexMutex); + simple_mtx_lock(&ctx->Shared->TexMutex); ctx->Shared->TextureStateStamp++; (void) texObj; } @@ -113,7 +113,7 @@ _mesa_unlock_texture(struct gl_context *ctx, struct gl_texture_object *texObj) { (void) texObj; if (!ctx->TexturesLocked) - mtx_unlock(&ctx->Shared->TexMutex); + simple_mtx_unlock(&ctx->Shared->TexMutex); }