Gitiles
Code Review
Sign In
git01.mediatek.com
/
haproxy
/
35ee710ececff9e87a0b770193d78a8a0cae0a50
/
src
/
thread.c
5b09341
MEDIUM: cpu-map: replace the process number with the thread group number
by Willy Tarreau
· Fri Jul 08 09:38:30 2022 +0200
1b2b59b
MINOR: thread: remove MAX_THREADS limitation
by Willy Tarreau
· Thu Jul 07 15:11:32 2022 +0200
7aa4119
MEDIUM: debug/threads: make the lock debugging take tgroups into account
by Willy Tarreau
· Fri Jul 15 17:53:10 2022 +0200
f15c75a
BUG/MINOR: thread: use the correct thread's group in ha_tkillall()
by Willy Tarreau
· Fri Jul 15 08:27:56 2022 +0200
9b0f0d1
BUG/MINOR: threads: produce correct global mask for tgroup > 1
by Willy Tarreau
· Fri Jul 15 19:38:52 2022 +0200
598cf3f
MAJOR: threads: change thread_isolate to support inter-group synchronization
by Willy Tarreau
· Fri Jul 01 15:08:37 2022 +0200
03f9b35
MEDIUM: tinfo: add a dynamic thread-group context
by Willy Tarreau
· Mon Jun 27 16:02:24 2022 +0200
22b2a24
CLEANUP: thread: remove thread_sync_release() and thread_sync_mask
by Willy Tarreau
· Mon Jun 27 15:05:44 2022 +0200
cce203a
MINOR: thread: add a new all_tgroups_mask variable to know about active tgroups
by Willy Tarreau
· Fri Jun 24 15:55:11 2022 +0200
c6cf64b
MINOR: thread: use ltid_bit in ha_tkillall()
by Willy Tarreau
· Mon Jun 27 16:23:44 2022 +0200
377e37a
MINOR: tinfo: add the mask of enabled threads in each group
by Willy Tarreau
· Fri Jun 24 15:18:49 2022 +0200
60fe4a9
MINOR: tinfo: replace the tgid with tgid_bit in tgroup_info
by Willy Tarreau
· Tue Jun 28 17:48:07 2022 +0200
66ad98a
MINOR: tinfo: add the tgid to the thread_info struct
by Willy Tarreau
· Tue Jun 28 10:49:57 2022 +0200
1a85a95
MINOR: tinfo: remove the global thread ID bit (tid_bit)
by Willy Tarreau
· Tue Jun 14 10:43:01 2022 +0200
7e2e4f8
CLEANUP: tree-wide: remove 25 occurrences of unneeded fcntl.h
by Willy Tarreau
· Tue Apr 26 10:30:35 2022 +0200
8ead1d0
BUILD: thread: use initcall instead of a constructor
by Willy Tarreau
· Mon Apr 25 19:23:17 2022 +0200
627def9
MINOR: threads: add a new function to resolve config groups and masks
by Willy Tarreau
· Wed Sep 29 18:59:47 2021 +0200
b90935c
MINOR: threads: add the current group ID in thread-local "tgid" variable
by Willy Tarreau
· Thu Sep 30 08:00:11 2021 +0200
43ab05b
MEDIUM: threads: replace ha_set_tid() with ha_set_thread()
by Willy Tarreau
· Tue Sep 28 09:43:11 2021 +0200
cc7a11e
MINOR: threads: set the tid, ltid and their bit in thread_cfg
by Willy Tarreau
· Tue Sep 28 08:53:11 2021 +0200
6eee85f
MINOR: threads: set the group ID and its bit in the thread group
by Willy Tarreau
· Tue Sep 28 08:50:02 2021 +0200
e6806eb
MEDIUM: threads: automatically assign threads to groups
by Willy Tarreau
· Mon Sep 27 10:10:26 2021 +0200
d04bc3a
MINOR: global: add a new "thread-group" directive
by Willy Tarreau
· Mon Sep 27 13:55:10 2021 +0200
c33b969
MINOR: global: add a new "thread-groups" directive
by Willy Tarreau
· Wed Sep 22 12:07:23 2021 +0200
f966284
MINOR: threads: introduce a minimalistic notion of thread-group
by Willy Tarreau
· Mon Sep 13 18:11:26 2021 +0200
6036342
MINOR: thread: make "ti" a const pointer and clean up thread_info a bit
by Willy Tarreau
· Fri Oct 01 16:29:27 2021 +0200
1a9c922
REORG: thread/sched: move the task_per_thread stuff to thread_ctx
by Willy Tarreau
· Fri Oct 01 11:30:33 2021 +0200
5554264
REORG: time: move time-keeping code and variables to clock.c
by Willy Tarreau
· Fri Oct 08 09:33:24 2021 +0200
aa99276
CLEANUP: thread: uninline ha_tkill/ha_tkillall/ha_cpu_relax()
by Willy Tarreau
· Wed Oct 06 23:33:20 2021 +0200
5e03dfa
MINOR: thread: use a dedicated static pthread_t array in thread.c
by Willy Tarreau
· Wed Oct 06 22:53:51 2021 +0200
4eeb883
REORG: thread: move ha_get_pthread_id() to thread.c
by Willy Tarreau
· Wed Oct 06 22:44:28 2021 +0200
d10385a
REORG: thread: move the thread init/affinity/stop to thread.c
by Willy Tarreau
· Wed Oct 06 22:22:40 2021 +0200
dced3eb
MINOR: thread/debug: replace nsec_now() with now_mono_time()
by Willy Tarreau
· Tue Oct 05 18:48:23 2021 +0200
407ef89
REORG: thread: uninline the lock-debugging code
by Willy Tarreau
· Tue Oct 05 18:39:27 2021 +0200
51ec03a
MINOR: config: use a standard parser for the "nbthread" keyword
by Willy Tarreau
· Wed Sep 22 11:55:22 2021 +0200
88d1c5d
MEDIUM: threads: add a stronger thread_isolate_full() call
by Willy Tarreau
· Wed Aug 04 11:44:17 2021 +0200
f519cfa
MINOR: threads: make thread_release() not wait for other ones to complete
by Willy Tarreau
· Wed Aug 04 11:22:07 2021 +0200
286363b
CLEANUP: thread: fix fantaisist indentation of thread_harmless_till_end()
by Willy Tarreau
· Wed Aug 04 10:33:57 2021 +0200
11bd6f7
BUILD: thread: include log.h from thread.c
by Willy Tarreau
· Sat May 08 20:33:02 2021 +0200
4c9efde
MINOR: thread: implement the detection of forced cpu affinity
by Amaury Denoyelle
· Wed Mar 31 16:57:39 2021 +0200
76b4419
MINOR: threads: Only consider running threads to end a thread harmeless period
by Christopher Faulet
· Fri Apr 16 11:33:39 2021 +0200
56c3b8b
MINOR: threads: mark all_threads_mask as read_mostly
by Willy Tarreau
· Sat Apr 10 17:28:18 2021 +0200
a9a9e9a
BUG/MEDIUM: thread: Fix a deadlock if an isolated thread is marked as harmless
by Christopher Faulet
· Thu Mar 25 14:11:36 2021 +0100
6a90601
BUG/MINOR: threads: Fixes the number of possible cpus report for Mac.
by David CARLIER
· Fri Jan 15 08:09:56 2021 +0000
3d18498
CLEANUP: threads: don't register an initcall when not debugging
by Willy Tarreau
· Sun Oct 18 10:20:59 2020 +0200
f734ebf
BUILD: threads: better workaround for late loading of libgcc_s
by Willy Tarreau
· Wed Sep 09 17:07:54 2020 +0200
06a1806
BUILD: thread: limit the libgcc_s workaround to glibc only
by Willy Tarreau
· Wed Sep 02 09:53:47 2020 +0200
77b9822
BUG/MINOR: threads: work around a libgcc_s issue with chrooting
by Willy Tarreau
· Wed Sep 02 08:04:35 2020 +0200
b255105
CLEANUP: include: tree-wide alphabetical sort of include files
by Willy Tarreau
· Tue Jun 09 09:07:15 2020 +0200
6be7849
REORG: include: move cfgparse.h to haproxy/cfgparse.h
by Willy Tarreau
· Fri Jun 05 00:00:29 2020 +0200
f268ee8
REORG: include: split global.h into haproxy/global{,-t}.h
by Willy Tarreau
· Thu Jun 04 17:05:57 2020 +0200
0f6ffd6
REORG: include: move fd.h to haproxy/fd{,-t}.h
by Willy Tarreau
· Wed Jun 03 19:33:00 2020 +0200
48fbcae
REORG: tools: split common/standard.h into haproxy/tools{,-t}.h
by Willy Tarreau
· Wed Jun 03 18:09:46 2020 +0200
3f567e4
REORG: include: split hathreads into haproxy/thread.h and haproxy/thread-t.h
by Willy Tarreau
· Thu May 28 15:29:19 2020 +0200
[Renamed (98%) from src/hathreads.c]
a92c5ce
BUILD/MEDIUM: threads: rename thread_info struct to ha_thread_info
by David Carlier
· Fri Sep 13 05:03:12 2019 +0100
9a1f573
MEDIUM: threads: add thread_sync_release() to synchronize steps
by Willy Tarreau
· Sun Jun 09 12:20:02 2019 +0200
31cba0d
MINOR: threads: avoid clearing harmless twice in thread_release()
by Willy Tarreau
· Sun Jun 09 08:44:19 2019 +0200
2beaaf7
MINOR: threads: implement ha_tkill() and ha_tkillall()
by Willy Tarreau
· Wed May 22 08:43:34 2019 +0200
05ed14c
CLEANUP: threads: really move thread_info to hathreads.c
by Willy Tarreau
· Wed May 22 06:42:27 2019 +0200
8323a37
MINOR: threads: add a thread-local thread_info pointer "ti"
by Willy Tarreau
· Mon May 20 18:57:53 2019 +0200
5a6e224
REORG: threads: move the struct thread_info from global.h to hathreads.h
by Willy Tarreau
· Mon May 20 18:56:48 2019 +0200
38171da
MINOR: thread: implement ha_thread_relax()
by Willy Tarreau
· Fri May 17 16:33:13 2019 +0200
46453d3
MINOR: threads: Implement thread_cpus_enabled() for FreeBSD.
by Olivier Houchard
· Thu Apr 11 00:06:47 2019 +0200
b23a61f
MEDIUM: threads: Use the new _HA_ATOMIC_* macros.
by Olivier Houchard
· Fri Mar 08 18:51:17 2019 +0100
149ab77
MAJOR: threads: enable one thread per CPU by default
by Willy Tarreau
· Sat Jan 26 14:27:06 2019 +0100
fc64736
CLEANUP: threads: use nbits to calculate the thread mask
by Willy Tarreau
· Sat Feb 02 17:05:03 2019 +0100
f5809cd
MINOR: threads: make MAX_THREADS configurable at build time
by Willy Tarreau
· Sat Jan 26 13:35:03 2019 +0100
8459f25
BUILD: thread: properly report multi-thread support
by Willy Tarreau
· Sat Dec 15 16:48:14 2018 +0100
8071338
MINOR: initcall: apply initcall to all register_build_opts() calls
by Willy Tarreau
· Mon Nov 26 10:19:54 2018 +0100
a8ae77d
MINOR: thread: provide a set of lock initialisers
by Willy Tarreau
· Sun Nov 25 19:28:23 2018 +0100
a9c0252
BUG/MEDIUM: threads: fix thread_release() at the end of the rendez-vous point
by Willy Tarreau
· Tue Oct 16 16:11:56 2018 +0200
647c70b
MINOR: threads: remove the previous synchronization point
by Willy Tarreau
· Thu Aug 02 11:01:05 2018 +0200
ab657ce
BUG/MEDIUM: threads: fix the no-thread case after the change to the sync point
by Willy Tarreau
· Tue Aug 07 10:07:15 2018 +0200
60b639c
MEDIUM: hathreads: implement a more flexible rendez-vous point
by Willy Tarreau
· Thu Aug 02 10:16:17 2018 +0200
0c026f4
MINOR: threads: add more consistency between certain variables in no-thread case
by Willy Tarreau
· Wed Aug 01 19:12:20 2018 +0200
0ccd322
MINOR: threads: move "nbthread" parsing to hathreads.c
by Willy Tarreau
· Mon Jul 30 10:34:35 2018 +0200
3e12304
BUG/MINOR: threads: Handle nbthread == MAX_THREADS.
by Olivier Houchard
· Fri Jul 27 17:06:59 2018 +0200
3ea2490
BUG/MEDIUM: threads/sync: use sched_yield when available
by Willy Tarreau
· Fri Jul 27 07:47:24 2018 +0200
ddb6c16
BUG/MEDIUM: threads: Fix the exit condition of the thread barrier
by Christopher Faulet
· Fri Jul 20 09:31:53 2018 +0200
6b96f72
BUG/MEDIUM: pollers: Use a global list for fd shared between threads.
by Olivier Houchard
· Wed Apr 25 16:58:25 2018 +0200
148b16e
BUG/MEDIUM: threads: Fix the sync point for more than 32 threads
by Christopher Faulet
· Wed May 02 16:58:40 2018 +0200
e96e61c
BUILD/MINOR: threads: always export thread_sync_io_handler()
by Willy Tarreau
· Thu Mar 29 18:54:33 2018 +0200
4037a3f
MINOR: cli/threads: make "show fd" report thread_sync_io_handler instead of "unknown"
by Willy Tarreau
· Wed Mar 28 18:06:47 2018 +0200
a9786b6
MINOR: fd: pass the iocb and owner to fd_insert()
by Willy Tarreau
· Thu Jan 25 07:22:13 2018 +0100
c20d737
BUG/MINOR: threads: always set an owner to the thread_sync pipe
by Willy Tarreau
· Thu Jan 25 07:28:37 2018 +0100
81991d3
BUG/MAJOR: thread: Be sure to request a sync between threads only once at a time
by Christopher Faulet
· Sat Dec 02 09:53:24 2017 +0100
e9a896e
BUG/MINOR: threads: tid_bit must be a unsigned long
by Christopher Faulet
· Tue Nov 14 10:16:04 2017 +0100
2a944ee
BUILD: threads: Rename SPIN/RWLOCK macros using HA_ prefix
by Christopher Faulet
· Tue Nov 07 10:42:54 2017 +0100
6dbd3e9
BUG/MEDIUM: threads: don't try to free build option message on exit
by Willy Tarreau
· Sun Nov 05 11:50:18 2017 +0100
0493149
MINOR: thread: report multi-thread support in haproxy -vv
by Willy Tarreau
· Fri Nov 03 23:39:25 2017 +0100
209d02a
WIP: SQUASH WITH SYNC POINT
by Christopher Faulet
· Fri Oct 27 23:01:38 2017 +0200
36716a7
MEDIUM: threads/fd: Initialize the process mask during the call to fd_insert
by Christopher Faulet
· Tue May 30 11:07:16 2017 +0200
339fff8
MEDIUM: threads: Adds a set of functions to handle sync-point
by Christopher Faulet
· Thu Oct 19 11:59:15 2017 +0200
1a2b56e
MEDIUM: threads: Add hathreads header file
by Christopher Faulet
· Thu Oct 12 16:09:09 2017 +0200