--- a/src/util/rand_xor.c	2020-10-03 12:27:48.489024729 +0200
+++ b/src/util/rand_xor.c	2020-10-03 12:31:05.927113521 +0200
@@ -28,6 +28,7 @@
 #if defined(HAVE_GETRANDOM)
 #include <sys/random.h>
 #endif
+#include <sys/types.h>		/* size_t, ssize_t */
 #include <unistd.h>
 #include <fcntl.h>
 #endif
--- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h
+++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_winsys.h
@@ -30,6 +30,7 @@
 
 #include <amdgpu.h>
 #include <pthread.h>
+#include <sys/types.h>
 #include "util/list.h"
 #include "util/rwlock.h"
 #include "ac_gpu_info.h"
--- a/src/gallium/frontends/nine/nine_debug.c	2020-03-06 07:46:48.278918421 +0100
+++ b/src/gallium/frontends/nine/nine_debug.c	2020-03-06 07:51:32.919964119 +0100
@@ -65,7 +65,7 @@ _nine_debug_printf( unsigned long flag,
 {
     static boolean first = TRUE;
     static unsigned long dbg_flags = DBG_ERROR | DBG_WARN;
-    unsigned long tid = 0;
+    pthread_t tid = 0;
 
     if (first) {
         first = FALSE;
@@ -74,7 +74,7 @@ _nine_debug_printf( unsigned long flag,
 
 #if defined(HAVE_PTHREAD)
     if (dbg_flags & DBG_TID)
-        tid = (unsigned long)pthread_self();
+        tid = pthread_self();
 #endif
 
     if (dbg_flags & flag) {
--- a/src/gallium/drivers/freedreno/freedreno_util.h
+++ b/src/gallium/drivers/freedreno/freedreno_util.h
@@ -106,6 +106,9 @@ extern bool fd_binning_enabled;
 
 #include <unistd.h>
 #include <sys/types.h>
+#include <sys/syscall.h>
+
+#define gettid() ((pid_t)syscall(SYS_gettid))
 
 #define DBG(fmt, ...)                                                          \
    do {                                                                        \
