Mesa (main): mesa: use simple_mtx_t for TexMutex
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Oct 6 00:12:41 UTC 2021
Module: Mesa
Branch: main
Commit: f6abb3445b7f244c0243f03bd7cf1e7ad1e2f1ab
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f6abb3445b7f244c0243f03bd7cf1e7ad1e2f1ab
Author: Marek Olšák <marek.olsak at amd.com>
Date: Fri Oct 1 15:46:48 2021 -0400
mesa: use simple_mtx_t for TexMutex
change mtx_recursive -> mtx_plain, there's no recursive locking
Acked-By: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg at google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13152>
---
src/mesa/main/glthread.c | 4 ++--
src/mesa/main/mtypes.h | 2 +-
src/mesa/main/shared.c | 4 ++--
src/mesa/main/texobj.c | 4 ++--
src/mesa/main/texobj.h | 4 ++--
5 files changed, 9 insertions(+), 9 deletions(-)
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);
}
More information about the mesa-commit
mailing list