[FFmpeg-cvslog] lavu/thread: add an internal function for setting thread name
Anton Khirnov
git at videolan.org
Mon Oct 24 03:15:20 EEST 2022
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Tue Oct 18 18:10:01 2022 +0200| [f66e7946724a102c67bf03faaca7517d8ee2fcd9] | committer: Anton Khirnov
lavu/thread: add an internal function for setting thread name
Linux-only for now.
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f66e7946724a102c67bf03faaca7517d8ee2fcd9
---
configure | 2 ++
libavutil/thread.h | 16 +++++++++++++++-
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index baaf61271f..eefd103414 100755
--- a/configure
+++ b/configure
@@ -2310,6 +2310,7 @@ SYSTEM_FUNCS="
nanosleep
PeekNamedPipe
posix_memalign
+ prctl
pthread_cancel
sched_getaffinity
SecItemImport
@@ -6294,6 +6295,7 @@ check_func mmap
check_func mprotect
# Solaris has nanosleep in -lrt, OpenSolaris no longer needs that
check_func_headers time.h nanosleep || check_lib nanosleep time.h nanosleep -lrt
+check_func_headers sys/prctl.h prctl
check_func sched_getaffinity
check_func setrlimit
check_struct "sys/stat.h" "struct stat" st_mtim.tv_nsec -D_BSD_SOURCE
diff --git a/libavutil/thread.h b/libavutil/thread.h
index 7106fd0d47..2f5e7e1cb5 100644
--- a/libavutil/thread.h
+++ b/libavutil/thread.h
@@ -24,6 +24,12 @@
#include "config.h"
+#if HAVE_PRCTL
+#include <sys/prctl.h>
+#endif
+
+#include "error.h"
+
#if HAVE_PTHREADS || HAVE_W32THREADS || HAVE_OS2THREADS
#if HAVE_PTHREADS
@@ -33,7 +39,6 @@
#include <stdlib.h>
-#include "error.h"
#include "log.h"
#include "macros.h"
@@ -187,4 +192,13 @@ static inline int ff_thread_once(char *control, void (*routine)(void))
#endif
+static inline int ff_thread_setname(const char *name)
+{
+#if HAVE_PRCTL
+ return AVERROR(prctl(PR_SET_NAME, name));
+#endif
+
+ return AVERROR(ENOSYS);
+}
+
#endif /* AVUTIL_THREAD_H */
More information about the ffmpeg-cvslog
mailing list