/*
* Lock the mutex for the module
*/
-static inline void safe_lock(module_instance_t *instance)
+static inline CC_HINT(always_inline) void safe_lock(module_instance_t *instance)
{
if (instance->mutex) pthread_mutex_lock(instance->mutex);
}
/*
* Unlock the mutex for the module
*/
-static inline void safe_unlock(module_instance_t *instance)
+static inline CC_HINT(always_inline) void safe_unlock(module_instance_t *instance)
{
if (instance->mutex) pthread_mutex_unlock(instance->mutex);
}
caller = request->module;
request->module = mc->instance->name;
+ safe_lock(mc->instance);
state->signal(&(module_ctx_t){
.instance = mc->instance->dl_inst->data,
.thread = state->thread->data
},
request, state->rctx, action);
+ safe_unlock(mc->instance);
request->module = caller;
/*