main: Move hashLockMutex/hashUnlockMutex to header and inline
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
This commit is contained in:
parent
f203a9f7d1
commit
1575a8146a
|
@ -35,7 +35,6 @@
|
|||
*/
|
||||
|
||||
#include "glheader.h"
|
||||
#include "imports.h"
|
||||
#include "hash.h"
|
||||
#include "util/hash_table.h"
|
||||
|
||||
|
@ -52,18 +51,6 @@
|
|||
*/
|
||||
#define DELETED_KEY_VALUE 1
|
||||
|
||||
/**
|
||||
* The hash table data structure.
|
||||
*/
|
||||
struct _mesa_HashTable {
|
||||
struct hash_table *ht;
|
||||
GLuint MaxKey; /**< highest key inserted so far */
|
||||
mtx_t Mutex; /**< mutual exclusion lock */
|
||||
GLboolean InDeleteAll; /**< Debug check */
|
||||
/** Value that would be in the table for DELETED_KEY_VALUE. */
|
||||
void *deleted_key_data;
|
||||
};
|
||||
|
||||
/** @{
|
||||
* Mapping from our use of GLuint as both the key and the hash value to the
|
||||
* hash_table.h API
|
||||
|
@ -230,36 +217,6 @@ _mesa_HashLookupLocked(struct _mesa_HashTable *table, GLuint key)
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
* Lock the hash table mutex.
|
||||
*
|
||||
* This function should be used when multiple objects need
|
||||
* to be looked up in the hash table, to avoid having to lock
|
||||
* and unlock the mutex each time.
|
||||
*
|
||||
* \param table the hash table.
|
||||
*/
|
||||
void
|
||||
_mesa_HashLockMutex(struct _mesa_HashTable *table)
|
||||
{
|
||||
assert(table);
|
||||
mtx_lock(&table->Mutex);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Unlock the hash table mutex.
|
||||
*
|
||||
* \param table the hash table.
|
||||
*/
|
||||
void
|
||||
_mesa_HashUnlockMutex(struct _mesa_HashTable *table)
|
||||
{
|
||||
assert(table);
|
||||
mtx_unlock(&table->Mutex);
|
||||
}
|
||||
|
||||
|
||||
static inline void
|
||||
_mesa_HashInsert_unlocked(struct _mesa_HashTable *table, GLuint key, void *data)
|
||||
{
|
||||
|
|
|
@ -33,8 +33,21 @@
|
|||
|
||||
|
||||
#include "glheader.h"
|
||||
#include "imports.h"
|
||||
|
||||
|
||||
/**
|
||||
* The hash table data structure.
|
||||
*/
|
||||
struct _mesa_HashTable {
|
||||
struct hash_table *ht;
|
||||
GLuint MaxKey; /**< highest key inserted so far */
|
||||
mtx_t Mutex; /**< mutual exclusion lock */
|
||||
GLboolean InDeleteAll; /**< Debug check */
|
||||
/** Value that would be in the table for DELETED_KEY_VALUE. */
|
||||
void *deleted_key_data;
|
||||
};
|
||||
|
||||
extern struct _mesa_HashTable *_mesa_NewHashTable(void);
|
||||
|
||||
extern void _mesa_DeleteHashTable(struct _mesa_HashTable *table);
|
||||
|
@ -45,9 +58,34 @@ extern void _mesa_HashInsert(struct _mesa_HashTable *table, GLuint key, void *da
|
|||
|
||||
extern void _mesa_HashRemove(struct _mesa_HashTable *table, GLuint key);
|
||||
|
||||
extern void _mesa_HashLockMutex(struct _mesa_HashTable *table);
|
||||
/**
|
||||
* Lock the hash table mutex.
|
||||
*
|
||||
* This function should be used when multiple objects need
|
||||
* to be looked up in the hash table, to avoid having to lock
|
||||
* and unlock the mutex each time.
|
||||
*
|
||||
* \param table the hash table.
|
||||
*/
|
||||
static inline void
|
||||
_mesa_HashLockMutex(struct _mesa_HashTable *table)
|
||||
{
|
||||
assert(table);
|
||||
mtx_lock(&table->Mutex);
|
||||
}
|
||||
|
||||
extern void _mesa_HashUnlockMutex(struct _mesa_HashTable *table);
|
||||
|
||||
/**
|
||||
* Unlock the hash table mutex.
|
||||
*
|
||||
* \param table the hash table.
|
||||
*/
|
||||
static inline void
|
||||
_mesa_HashUnlockMutex(struct _mesa_HashTable *table)
|
||||
{
|
||||
assert(table);
|
||||
mtx_unlock(&table->Mutex);
|
||||
}
|
||||
|
||||
extern void *_mesa_HashLookupLocked(struct _mesa_HashTable *table, GLuint key);
|
||||
|
||||
|
|
Loading…
Reference in New Issue