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