Fix: mutex initialization, remove explicit RESOURCE_HANDLES
The new mutex has an implicit resource handle
This commit is contained in:
parent
e938b36071
commit
2a0b5dca5e
4 changed files with 7 additions and 13 deletions
|
|
@ -42,7 +42,7 @@ NOBUG_DEFINE_FLAG_PARENT (filedescriptor, file_all);
|
|||
This registry stores all acquired filedescriptors for lookup, they will be freed when not referenced anymore.
|
||||
*/
|
||||
static PSplay registry = NULL;
|
||||
static lumiera_mutex registry_mutex = {PTHREAD_MUTEX_INITIALIZER NOBUG_RESOURCE_HANDLE_COMMA_INITIALIZER};
|
||||
static lumiera_mutex registry_mutex;
|
||||
|
||||
|
||||
static int
|
||||
|
|
@ -96,10 +96,7 @@ lumiera_filedescriptor_registry_init (void)
|
|||
if (!registry)
|
||||
LUMIERA_DIE (NO_MEMORY);
|
||||
|
||||
TODO ("LumieraMutex lumiera_mutex_init (LumieraMutex self, const char* purpose, struct nobug_flag* flag);");
|
||||
|
||||
// RESOURCE_HANDLE_INIT (registry_mutex.rh);
|
||||
RESOURCE_ANNOUNCE (filedescriptor, "mutex", "filedescriptor registry", ®istry, registry_mutex.rh);
|
||||
lumiera_mutex_init (®istry_mutex, "filedescriptor_registry", &NOBUG_FLAG (filedescriptor));
|
||||
}
|
||||
|
||||
void
|
||||
|
|
@ -108,9 +105,7 @@ lumiera_filedescriptor_registry_destroy (void)
|
|||
TRACE (filedescriptor);
|
||||
REQUIRE (!psplay_nelements (registry));
|
||||
|
||||
RESOURCE_FORGET (filedescriptor, registry_mutex.rh);
|
||||
|
||||
TODO ("LumieraMutex lumiera_mutex_destroy (LumieraMutex self, struct nobug_flag* flag);");
|
||||
lumiera_mutex_destroy (®istry_mutex, &NOBUG_FLAG (filedescriptor));
|
||||
|
||||
if (registry)
|
||||
psplay_destroy (registry);
|
||||
|
|
|
|||
|
|
@ -62,20 +62,21 @@ struct lumiera_mmap_struct
|
|||
|
||||
/** array with refcounters per page **/
|
||||
unsigned short* refmap;
|
||||
|
||||
//RESOURCE_HANDLE (rh);
|
||||
};
|
||||
|
||||
|
||||
LumieraMMap
|
||||
lumiera_mmap_init (LumieraMMap self, LumieraFile file, LList acquirer, off_t start, size_t size, size_t chunksize);
|
||||
|
||||
|
||||
LumieraMMap
|
||||
lumiera_mmap_new (LumieraFile file, LList acquirer, off_t start, size_t size, size_t chunksize);
|
||||
|
||||
|
||||
void
|
||||
lumiera_mmap_delete (LumieraMMap self);
|
||||
|
||||
|
||||
void*
|
||||
lumiera_mmap_destroy_node (LList node);
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,6 @@ struct lumiera_mmapcache_struct
|
|||
size_t total;
|
||||
size_t cached;
|
||||
lumiera_mutex lock;
|
||||
RESOURCE_HANDLE (rh);
|
||||
};
|
||||
|
||||
extern LumieraMMapcache lumiera_mcache;
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ typedef lumiera_mmapings* LumieraMMapings;
|
|||
|
||||
/**
|
||||
* @file
|
||||
* Keeps all mmaped areas
|
||||
* Manage the mmap objects of a file
|
||||
*
|
||||
*/
|
||||
|
||||
|
|
@ -54,7 +54,6 @@ struct lumiera_mmapings_struct
|
|||
|
||||
LumieraFiledescriptor descriptor;
|
||||
lumiera_mutex lock;
|
||||
RESOURCE_HANDLE (rh);
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Reference in a new issue