summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/CMakeLists.txt6
-rw-r--r--src/lib/dlt_user.c8
2 files changed, 12 insertions, 2 deletions
diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
index 46b67e4..87d7579 100644
--- a/cmake/CMakeLists.txt
+++ b/cmake/CMakeLists.txt
@@ -90,6 +90,12 @@ else()
CHECK_FUNCTION_EXISTS( mq_receive HAVE_FUNC_MQRECEIVE)
endif()
+if( CMAKE_THREAD_LIBS_INIT )
+ CHECK_LIBRARY_EXISTS( ${CMAKE_THREAD_LIBS_INIT} pthread_setname_np pthread.h HAVE_FUNC_PTHREAD_SETNAME_NP )
+else( CMAKE_THREAD_LIBS_INIT )
+ CHECK_FUNCTION_EXISTS( pthread_setname_np HAVE_FUNC_PTHREAD_SETNAME_NP )
+endif( CMAKE_THREAD_LIBS_INIT )
+
if(WITH_CHECK_CONFIG_FILE)
configure_file(${PROJECT_SOURCE_DIR}/cmake/config.h.cmake ${PROJECT_BINARY_DIR}/include/dlt/config.h)
endif(WITH_CHECK_CONFIG_FILE)
diff --git a/src/lib/dlt_user.c b/src/lib/dlt_user.c
index e3565af..6bc1aaa 100644
--- a/src/lib/dlt_user.c
+++ b/src/lib/dlt_user.c
@@ -2949,7 +2949,9 @@ void dlt_user_trace_network_segmented_thread(void *unused)
{
/* Unused on purpose. */
(void)unused;
-#ifdef linux
+#ifdef DLT_USE_PTHREAD_SETNAME_NP
+ pthread_setname_np(dlt_user.dlt_segmented_nwt_handle, "dlt_segmented");
+#elif linux
prctl(PR_SET_NAME, "dlt_segmented", 0, 0, 0);
#endif
pthread_cleanup_push(dlt_user_cleanup_handler, NULL);
@@ -3542,7 +3544,9 @@ void dlt_user_housekeeperthread_function(__attribute__((unused)) void *ptr)
}
#endif
-#ifdef linux
+#ifdef DLT_USE_PTHREAD_SETNAME_NP
+ pthread_setname_np(dlt_housekeeperthread_handle, "dlt_housekeeper");
+#elif linux
prctl(PR_SET_NAME, "dlt_housekeeper", 0, 0, 0);
#endif