From: YoungHun Kim Date: Mon, 8 Jun 2020 06:38:50 +0000 (+0900) Subject: Do not execute clean-up right after dispatch_no_instance without destroy dispatch X-Git-Tag: submit/tizen/20200609.063705~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=79a3755a10ca2a2544560e3cc92fcc1aabcbc5cf;p=platform%2Fcore%2Fmultimedia%2Fmmsvc-core.git Do not execute clean-up right after dispatch_no_instance without destroy dispatch - Add log of module pointer Change-Id: I7503b987805cdd6b9fd27add9e19841425b469bd --- diff --git a/core/src/muse_core.c b/core/src/muse_core.c index 2707e1b8..87bb0b90 100644 --- a/core/src/muse_core.c +++ b/core/src/muse_core.c @@ -677,7 +677,7 @@ bool muse_core_msg_recv_len(int fd, char *buf, int msg_len) LOGE("[fd %d] recv failed [error %s %d]", fd, err_msg, errno); return false; } else if (recv_len == 0) { - LOGD("EOF"); + LOGD("[fd %d] EOF", fd); return false; } diff --git a/packaging/mused.spec b/packaging/mused.spec index 48c7f8ba..1b004dd7 100644 --- a/packaging/mused.spec +++ b/packaging/mused.spec @@ -1,6 +1,6 @@ Name: mused Summary: A multimedia daemon -Version: 0.3.116 +Version: 0.3.117 Release: 0 Group: System/Libraries License: Apache-2.0 diff --git a/server/src/muse_server_connection.c b/server/src/muse_server_connection.c index 78712fa7..3972079d 100644 --- a/server/src/muse_server_connection.c +++ b/server/src/muse_server_connection.c @@ -61,7 +61,7 @@ static void _ms_connection_module_instance_info(muse_module_h m, ms_connection_t g_async_queue_push(ms->diag.msg_aq, (gpointer)dm); - LOGW("total number of modules = %d ( %s) - %s %p from pid %d %s client (count %d)", + LOGW("total number of modules = %d ( %s) - %s module %p from pid %d %s client (count %d)", len, ms->instance_pid_info, ms_get_command_string(cmd), m, m->pid, ms_config_get_host_name(m->idx), connection->instance_count[m->idx]); } diff --git a/server/src/muse_server_ipc.c b/server/src/muse_server_ipc.c index 358ec136..6d82a9c2 100644 --- a/server/src/muse_server_ipc.c +++ b/server/src/muse_server_ipc.c @@ -88,7 +88,7 @@ static void _ms_ipc_module_msg_ch_cleanup(muse_module_h m) SECURE_LOGD("[close] [%d] MUSE_CHANNEL_MSG %p", m->ch[MUSE_CHANNEL_MSG].sock_fd, m); muse_core_connection_close(m->ch[MUSE_CHANNEL_MSG].sock_fd); - SECURE_LOGD("%p thread exit", m->ch[MUSE_CHANNEL_MSG].thread); + SECURE_LOGD("msg thread (%p) exit", m->ch[MUSE_CHANNEL_MSG].thread); g_thread_unref(m->ch[MUSE_CHANNEL_MSG].thread); m->ch[MUSE_CHANNEL_MSG].thread = NULL; } @@ -240,7 +240,7 @@ static gboolean _ms_ipc_dispatch_no_instance(muse_module_h m, void *jobj) out: ms_module_dispatch_unlock(m); - return FALSE; + return TRUE; } static gpointer _ms_ipc_dispatch_worker(gpointer data) @@ -287,11 +287,11 @@ static gpointer _ms_ipc_dispatch_worker(gpointer data) if (muse_core_msg_object_get_value(MSG_KEY_API, jobj, MUSE_TYPE_INT, &m->api)) { switch (m->api) { case API_CREATE: - SECURE_LOGI("CREATE %p %d", m, fd); + SECURE_LOGI("CREATE module %p %d", m, fd); attempt_to_dispatch = _ms_ipc_dispatch_create(m, jobj); break; case API_DESTROY: - SECURE_LOGI("DESTROY %p %d", m, fd); + SECURE_LOGI("DESTROY module %p %d", m, fd); attempt_to_dispatch = _ms_ipc_dispatch_destroy(m); break; default: diff --git a/server/src/muse_server_private.c b/server/src/muse_server_private.c index 9bcf22b5..666ac60c 100644 --- a/server/src/muse_server_private.c +++ b/server/src/muse_server_private.c @@ -265,6 +265,8 @@ static gboolean _ms_connection_handler(GIOChannel *source, GIOCondition conditio GQueue *instance_queue = NULL; ms_connection_t *connection = NULL; + muse_return_val_if_fail(channel == MUSE_CHANNEL_MSG || channel == MUSE_CHANNEL_DATA, FALSE); + LOGI("Enter [%s channel]", channel_name[channel]); muse_return_val_if_fail(muse_server, FALSE); @@ -309,6 +311,7 @@ static gboolean _ms_connection_handler(GIOChannel *source, GIOCondition conditio if (channel == MUSE_CHANNEL_MSG) { m = g_new0(muse_module_t, 1); + SECURE_LOGI("module [%p]", m); m->ch[MUSE_CHANNEL_MSG].sock_fd = client_sockfd; m->pid = pid; g_mutex_init(&m->dispatch_lock); @@ -1271,7 +1274,7 @@ void ms_cmd_dispatch_foreach_func(gpointer data, gpointer user_data) } ms_cmd_dispatch(m, cmd); - SECURE_LOGI("[%s] %p (%s)", module_cmd[cmd], m, muse_server->conf->host[m->idx]); + SECURE_LOGI("[%s] module %p (%s)", module_cmd[cmd], m, muse_server->conf->host[m->idx]); if (cmd == MUSE_MODULE_COMMAND_EXTERNAL_STORAGE_STATE_CHANGED) muse_server_set_user_data(m, NULL);