]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUILD: thread: move lock label definitions to thread-t.h
authorWilly Tarreau <w@1wt.eu>
Wed, 14 Feb 2024 07:39:57 +0000 (08:39 +0100)
committerWilly Tarreau <w@1wt.eu>
Tue, 5 Mar 2024 10:50:34 +0000 (11:50 +0100)
The 'lock_label' enum is defined in thread.h but it's used in a few
type files, so let's move it to thread-t.h to allow explicit includes.

include/haproxy/thread-t.h
include/haproxy/thread.h

index f3552c2205f0a42f05ae1126a4c4d01a1dac22ce..5d361073935bd6b8c83a9d5cf162706ded3ce4c3 100644 (file)
@@ -162,4 +162,59 @@ struct ha_rwlock {
 
 #endif  /* DEBUG_THREAD */
 
+/* WARNING!!! if you update this enum, please also keep lock_label() up to date
+ * below.
+ */
+enum lock_label {
+       TASK_RQ_LOCK,
+       TASK_WQ_LOCK,
+       LISTENER_LOCK,
+       PROXY_LOCK,
+       SERVER_LOCK,
+       LBPRM_LOCK,
+       SIGNALS_LOCK,
+       STK_TABLE_LOCK,
+       STK_SESS_LOCK,
+       APPLETS_LOCK,
+       PEER_LOCK,
+       SHCTX_LOCK,
+       SSL_LOCK,
+       SSL_GEN_CERTS_LOCK,
+       PATREF_LOCK,
+       PATEXP_LOCK,
+       VARS_LOCK,
+       COMP_POOL_LOCK,
+       LUA_LOCK,
+       NOTIF_LOCK,
+       SPOE_APPLET_LOCK,
+       DNS_LOCK,
+       PID_LIST_LOCK,
+       EMAIL_ALERTS_LOCK,
+       PIPES_LOCK,
+       TLSKEYS_REF_LOCK,
+       AUTH_LOCK,
+       RING_LOCK,
+       DICT_LOCK,
+       PROTO_LOCK,
+       QUEUE_LOCK,
+       CKCH_LOCK,
+       SNI_LOCK,
+       SSL_SERVER_LOCK,
+       SFT_LOCK, /* sink forward target */
+       IDLE_CONNS_LOCK,
+       OCSP_LOCK,
+       QC_CID_LOCK,
+       CACHE_LOCK,
+       OTHER_LOCK,
+       /* WT: make sure never to use these ones outside of development,
+        * we need them for lock profiling!
+        */
+       DEBUG1_LOCK,
+       DEBUG2_LOCK,
+       DEBUG3_LOCK,
+       DEBUG4_LOCK,
+       DEBUG5_LOCK,
+       LOCK_LABELS
+};
+
 #endif /* _HAPROXY_THREAD_T_H */
index 8c7520b40782ae8ff37d0e828dcdeaeb79ed39d7..0984c67272bb6b278a6ba5c2c70ca704f9c6663b 100644 (file)
@@ -386,62 +386,6 @@ int thread_cpu_mask_forced(void);
 #define HA_RWLOCK_TRYSKLOCK(lbl,l) __ha_rwlock_trysklock(lbl, l, __func__, __FILE__, __LINE__)
 #define HA_RWLOCK_TRYRDTOSK(lbl,l) __ha_rwlock_tryrdtosk(lbl, l, __func__, __FILE__, __LINE__)
 
-/* WARNING!!! if you update this enum, please also keep lock_label() up to date
- * below.
- */
-enum lock_label {
-       TASK_RQ_LOCK,
-       TASK_WQ_LOCK,
-       LISTENER_LOCK,
-       PROXY_LOCK,
-       SERVER_LOCK,
-       LBPRM_LOCK,
-       SIGNALS_LOCK,
-       STK_TABLE_LOCK,
-       STK_SESS_LOCK,
-       APPLETS_LOCK,
-       PEER_LOCK,
-       SHCTX_LOCK,
-       SSL_LOCK,
-       SSL_GEN_CERTS_LOCK,
-       PATREF_LOCK,
-       PATEXP_LOCK,
-       VARS_LOCK,
-       COMP_POOL_LOCK,
-       LUA_LOCK,
-       NOTIF_LOCK,
-       SPOE_APPLET_LOCK,
-       DNS_LOCK,
-       PID_LIST_LOCK,
-       EMAIL_ALERTS_LOCK,
-       PIPES_LOCK,
-       TLSKEYS_REF_LOCK,
-       AUTH_LOCK,
-       RING_LOCK,
-       DICT_LOCK,
-       PROTO_LOCK,
-       QUEUE_LOCK,
-       CKCH_LOCK,
-       SNI_LOCK,
-       SSL_SERVER_LOCK,
-       SFT_LOCK, /* sink forward target */
-       IDLE_CONNS_LOCK,
-       OCSP_LOCK,
-       QC_CID_LOCK,
-       CACHE_LOCK,
-       OTHER_LOCK,
-       /* WT: make sure never to use these ones outside of development,
-        * we need them for lock profiling!
-        */
-       DEBUG1_LOCK,
-       DEBUG2_LOCK,
-       DEBUG3_LOCK,
-       DEBUG4_LOCK,
-       DEBUG5_LOCK,
-       LOCK_LABELS
-};
-
-
 /* Following functions are used to collect some stats about locks. We wrap
  * pthread functions to known how much time we wait in a lock. */