From 9c3b2bc76bb5cbfd35322fa2a1c37735ad6b585c Mon Sep 17 00:00:00 2001 From: Chanwoo Choi Date: Fri, 23 Apr 2021 16:02:45 +0900 Subject: [PATCH] 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 --- src/hal-api-common.c | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) 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); -- 2.7.4