#include "drm_internal.h"
struct drm_magic_entry {
- struct list_head head;
struct drm_hash_item hash_item;
struct drm_file *priv;
};
entry->hash_item.key = (unsigned long)magic;
mutex_lock(&dev->struct_mutex);
drm_ht_insert_item(&master->magiclist, &entry->hash_item);
- list_add_tail(&entry->head, &master->magicfree);
mutex_unlock(&dev->struct_mutex);
return 0;
}
pt = drm_hash_entry(hash, struct drm_magic_entry, hash_item);
drm_ht_remove_item(&master->magiclist, hash);
- list_del(&pt->head);
mutex_unlock(&dev->struct_mutex);
kfree(pt);
* @unique: Unique identifier: e.g. busid. Protected by drm_global_mutex.
* @unique_len: Length of unique field. Protected by drm_global_mutex.
* @magiclist: Hash of used authentication tokens. Protected by struct_mutex.
- * @magicfree: List of used authentication tokens. Protected by struct_mutex.
* @lock: DRI lock information.
* @driver_priv: Pointer to driver-private information.
*/
char *unique;
int unique_len;
struct drm_open_hash magiclist;
- struct list_head magicfree;
struct drm_lock_data lock;
void *driver_priv;
};