From 12c7189bc8e1ae8387064d909dabdee16b542ea4 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Mon, 28 Apr 2025 15:57:26 +0200 Subject: [PATCH] MEDIUM: thread: set DEBUG_THREAD to 1 by default Setting DEBUG_THREAD to 1 allows recording the lock history for each thread. Tests have shown that (as predicted) the cost of updating a single thread-local variable is not perceptible in the noise, especially when compared to the cost of obtaining a lock. Since this can provide useful value when debugging deadlocks, let's enable it by default when threads are enabled. --- include/haproxy/defaults.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/include/haproxy/defaults.h b/include/haproxy/defaults.h index 7b6b6ec0d..1de038e3a 100644 --- a/include/haproxy/defaults.h +++ b/include/haproxy/defaults.h @@ -594,9 +594,13 @@ # define DEBUG_STRICT 1 #endif -/* Let's make DEBUG_THREAD default to 0, and make sure it has a value */ +/* Let's make DEBUG_THREAD default to 1, and make sure it has a value */ #ifndef DEBUG_THREAD -# define DEBUG_THREAD 0 +# if defined(USE_THREAD) +# define DEBUG_THREAD 1 +# else +# define DEBUG_THREAD 0 +# endif #endif /* Let's make DEBUG_COUNTERS default to 1 to have glitches counters by default */