On 19/05/17 05:01, Thomas Helland wrote:
This is shorter and easier on the eyes. At the same time this also ensures that we are always asserting that the table pointer is not NULL. Currently that was not done for all situations.
Can we also have another patch that moves _mesa_HashUnlockMutex and _mesa_HashLockMutex to the header and inlines them?
With that I'd give this a: Reviewed-by: Timothy Arceri <[email protected]>
--- src/mesa/main/hash.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/src/mesa/main/hash.c b/src/mesa/main/hash.c index 5b9132a311..e352a46aa4 100644 --- a/src/mesa/main/hash.c +++ b/src/mesa/main/hash.c @@ -205,10 +205,9 @@ void * _mesa_HashLookup(struct _mesa_HashTable *table, GLuint key) { void *res; - assert(table); - mtx_lock(&table->Mutex); + _mesa_HashLockMutex(table); res = _mesa_HashLookup_unlocked(table, key); - mtx_unlock(&table->Mutex); + _mesa_HashUnlockMutex(table); return res; }@@ -315,10 +314,9 @@ _mesa_HashInsertLocked(struct _mesa_HashTable *table, GLuint key, void *data)void _mesa_HashInsert(struct _mesa_HashTable *table, GLuint key, void *data) { - assert(table); - mtx_lock(&table->Mutex); + _mesa_HashLockMutex(table); _mesa_HashInsert_unlocked(table, key, data); - mtx_unlock(&table->Mutex); + _mesa_HashUnlockMutex(table); }@@ -364,9 +362,9 @@ _mesa_HashRemoveLocked(struct _mesa_HashTable *table, GLuint key)void _mesa_HashRemove(struct _mesa_HashTable *table, GLuint key) { - mtx_lock(&table->Mutex); + _mesa_HashLockMutex(table); _mesa_HashRemove_unlocked(table, key); - mtx_unlock(&table->Mutex); + _mesa_HashUnlockMutex(table); }/**@@ -385,9 +383,8 @@ _mesa_HashDeleteAll(struct _mesa_HashTable *table, { struct hash_entry *entry;- assert(table);assert(callback); - mtx_lock(&table->Mutex); + _mesa_HashLockMutex(table); table->InDeleteAll = GL_TRUE; hash_table_foreach(table->ht, entry) { callback((uintptr_t)entry->key, entry->data, userData); @@ -398,7 +395,7 @@ _mesa_HashDeleteAll(struct _mesa_HashTable *table, table->deleted_key_data = NULL; } table->InDeleteAll = GL_FALSE; - mtx_unlock(&table->Mutex); + _mesa_HashUnlockMutex(table); }@@ -434,9 +431,9 @@ _mesa_HashWalk(const struct _mesa_HashTable *table,/* cast-away const */ struct _mesa_HashTable *table2 = (struct _mesa_HashTable *) table;- mtx_lock(&table2->Mutex);+ _mesa_HashLockMutex(table2); hash_walk_unlocked(table, callback, userData); - mtx_unlock(&table2->Mutex); + _mesa_HashUnlockMutex(table2); }void
_______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
