@@ -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
@@ -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 */