From: Chanwoo Choi Date: Fri, 23 Apr 2021 07:02:45 +0000 (+0900) Subject: halapi: Show process name when using hal-api library X-Git-Tag: accepted/tizen/unified/20210429.011907~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F14%2F257514%2F1;p=platform%2Fhal%2Fapi%2Fcommon.git halapi: Show process name when using hal-api library The hal-api library are used by the various process. In order to support the easy debugging, show the process name who get/put the hal-api library. Example log with process name, HAL_MODULE_TBM: Get HAL backend: name(vc4)/vendor(Samsung)/library(/hal/lib64/libhal-backend-tbm.so)/count(1) by /usr/bin/enlightenment HAL_MODULE_TBM: Get HAL backend: name(vc4)/vendor(Samsung)/library(/hal/lib64/libhal-backend-tbm.so)/count(1) by /usr/bin/boot-animation Change-Id: I7befe874d17585cfffc79e05e32f90f1edcb284d Signed-off-by: Chanwoo Choi --- diff --git a/src/hal-api-common.c b/src/hal-api-common.c index 769da13..530d18c 100644 --- a/src/hal-api-common.c +++ b/src/hal-api-common.c @@ -22,11 +22,16 @@ #include #include +#define _GNU_SOURCE +#include + #include #include "common.h" #include "hal-api-conf.h" +extern char *program_invocation_name; + #ifndef EXPORT #define EXPORT __attribute__ ((visibility("default"))) #endif @@ -205,9 +210,10 @@ static int __get_backend(enum hal_module module, void **data, const char *librar goto err_dlclose; } - _I("%s: Open HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d)\n", + _I("%s: Open HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d) by %s\n", info->module_name, backend->name, backend->vendor, - backend_library_name, info->usage_count); + get_backend_library_name(info), info->usage_count, + program_invocation_name); info->library_backend = backend; info->library_handle = handle; @@ -246,9 +252,10 @@ static int __get_backend(enum hal_module module, void **data, const char *librar info->usage_count++; - _I("%s: Get HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d)\n", + _I("%s: Get HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d) by %s\n", info->module_name, backend->name, backend->vendor, - backend_library_name, info->usage_count); + backend_library_name, info->usage_count, + program_invocation_name); G_UNLOCK(hal_common_lock); return TIZEN_ERROR_NONE; @@ -304,18 +311,20 @@ static int __put_backend(enum hal_module module, void *data, const char *library info->usage_count--; - _I("%s: Put HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d)\n", + _I("%s: Put HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d) by %s\n", info->module_name, backend->name, backend->vendor, - get_backend_library_name(info), info->usage_count); + get_backend_library_name(info), info->usage_count, + program_invocation_name); if (info->usage_count > 0) { ret = TIZEN_ERROR_NONE; goto out; } - _I("%s: Close HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d)\n", + _I("%s: Close HAL backend: name(%s)/vendor(%s)/library(%s)/count(%d) by %s\n", info->module_name, backend->name, backend->vendor, - get_backend_library_name(info), info->usage_count); + get_backend_library_name(info), info->usage_count, + program_invocation_name); if (handle) dlclose(handle);