freebsd-ports/graphics/mesa-dri/files/patch-src_util_u__thread.h
Jan Beich cd740e600a graphics/mesa-{libs,dri}: update to 18.3.2
Changes:	https://www.mesa3d.org/relnotes/18.3.0.html
Changes:	https://www.mesa3d.org/relnotes/18.3.1.html
Changes:	https://www.mesa3d.org/relnotes/18.3.2.html
PR:		233034
Tested by:	Kevin Oberman
Approved by:	maintainer timeout (2 weeks after 2019Q1)
Differential Revision:	https://reviews.freebsd.org/D17872
2019-01-17 15:34:55 +00:00

42 lines
1.3 KiB
C

- Implement setting thread name
- Use monotonic clock for timeouts
--- src/util/u_thread.h.orig 2018-11-09 11:03:00 UTC
+++ src/util/u_thread.h
@@ -34,7 +34,14 @@
#ifdef HAVE_PTHREAD
#include <signal.h>
+#if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+#include <pthread_np.h>
+# if !defined(__DragonFly__)
+# define cpu_set_t cpuset_t
+# endif
+#undef ALIGN /* Avoid conflict on FreeBSD in main/macros.h */
#endif
+#endif
static inline thrd_t u_thread_create(int (*routine)(void *), void *param)
{
@@ -64,6 +69,12 @@ static inline void u_thread_setname( const char *name
(__GLIBC__ >= 3 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 12)) && \
defined(__linux__)
pthread_setname_np(pthread_self(), name);
+# elif defined(__sun)
+ pthread_setname_np(pthread_self(), name);
+# elif defined(__DragonFly__) || defined(__FreeBSD__) || defined(__OpenBSD__)
+ pthread_set_name_np(pthread_self(), name);
+# elif defined(__NetBSD__)
+ pthread_setname_np(pthread_self(), "%s", (void*)name);
# endif
#endif
(void)name;
@@ -134,7 +145,7 @@ util_get_L3_for_pinned_thread(thrd_t thread, unsigned
static inline int64_t
u_thread_get_time_nano(thrd_t thread)
{
-#if defined(__linux__) && defined(HAVE_PTHREAD)
+#if defined(HAVE_PTHREAD)
struct timespec ts;
clockid_t cid;