]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
MINOR: tinfo: remove the global thread ID bit (tid_bit)
authorWilly Tarreau <w@1wt.eu>
Tue, 14 Jun 2022 08:43:01 +0000 (10:43 +0200)
committerWilly Tarreau <w@1wt.eu>
Tue, 14 Jun 2022 08:44:38 +0000 (10:44 +0200)
Each thread has its own local thread id and its own global thread id,
in addition to the masks corresponding to each. Once the global thread
ID can go beyond 64 it will not be possible to have a global thread Id
bit anymore, so better start to remove it and use only the local one
from the struct thread_info.

include/haproxy/thread.h
include/haproxy/tinfo-t.h
src/thread.c

index dfdb33387fba9873d73ea3be5141c1d9cfbfc836..a66180ee56747b339059a3d399cb9c19eb322cc2 100644 (file)
@@ -223,14 +223,14 @@ extern THREAD_LOCAL unsigned int tgid;     /* The thread group id (starts at 1)
 static inline void ha_set_thread(const struct thread_info *thr)
 {
        if (thr) {
-               BUG_ON(!thr->tid_bit);
+               BUG_ON(!thr->ltid_bit);
                BUG_ON(!thr->tg);
                BUG_ON(!thr->tg->tgid);
 
                ti      = thr;
                tg      = thr->tg;
                tid     = thr->tid;
-               tid_bit = thr->tid_bit;
+               tid_bit = thr->ltid_bit;
                th_ctx  = &ha_thread_ctx[tid];
                tgid    = tg->tgid;
        } else {
index 4f3b9f629c358ca60825d6bf76012268058eab34..b2395a4d5f3ca190416d4bc40309f9fdb969a160 100644 (file)
@@ -62,7 +62,7 @@ struct tgroup_info {
 struct thread_info {
        const struct tgroup_info *tg;     /* config of the thread-group this thread belongs to */
        uint tid, ltid;                   /* process-wide and group-wide thread ID (start at 0) */
-       ulong tid_bit, ltid_bit;          /* bit masks for the tid/ltid */
+       ulong ltid_bit;                   /* bit masks for the tid/ltid */
 
        /* pad to cache line (64B) */
        char __pad[0];                    /* unused except to check remaining room */
index 7318de973c02cb22760f371cce6f5019c9dfe1f4..9a0811bfd35fc5accfb96da68ae2342aaf8404d6 100644 (file)
@@ -1078,8 +1078,6 @@ int thread_map_to_groups()
        for (t = 0; t < global.nbthread; t++) {
                ha_thread_info[t].tid      = t;
                ha_thread_info[t].ltid     = t - ha_thread_info[t].tg->base;
-
-               ha_thread_info[t].tid_bit  = 1UL << ha_thread_info[t].tid;
                ha_thread_info[t].ltid_bit = 1UL << ha_thread_info[t].ltid;
        }