static pthread_mutex_t mmap_mutex = PTHREAD_MUTEX_INITIALIZER;
static
-struct mmap_mapping *mapping_create(void)
+struct mmap_mapping *mapping_create(int log_level)
{
struct mmap_mapping *mapping;
mapping = malloc(sizeof(struct mmap_mapping));
- if (mapping != NULL) {
+ if (mapping) {
mapping->file_handle = NULL;
mapping->map_handle = NULL;
+ mapping->log_level = log_level;
}
return mapping;
void mmap_lock(int log_level)
{
if (pthread_mutex_lock(&mmap_mutex)) {
- BT_LOGF_STR("Failed to acquire mmap_mutex.");
+ BT_LOG_WRITE_CUR_LVL(BT_LOG_FATAL, log_level, BT_LOG_TAG, "Failed to acquire mmap_mutex.");
abort();
}
}
void mmap_unlock(int log_level)
{
if (pthread_mutex_unlock(&mmap_mutex)) {
- BT_LOGF_STR("Failed to release mmap_mutex.");
+ BT_LOG_WRITE_CUR_LVL(BT_LOG_FATAL, log_level, BT_LOG_TAG, "Failed to release mmap_mutex.");
abort();
}
}
mmap_lock(log_level);
/* Check if the mapping exists in the hashtable. */
- if (g_hash_table_lookup(mmap_mappings, addr) == NULL) {
+ if (!g_hash_table_lookup(mmap_mappings, addr)) {
_set_errno(EINVAL);
ret = -1;
goto end;