1. c958c70 MINOR: task: replace global_tasks_mask with a check for tree's emptiness by Willy Tarreau · Thu Jun 16 15:59:36 2022 +0200
  2. da195e8 MINOR: task: remove grq_total and use rq_total instead by Willy Tarreau · Thu Jun 16 15:52:49 2022 +0200
  3. b17dd6c MEDIUM: task: replace the global rq_lock with a per-rq one by Willy Tarreau · Thu Jun 16 16:58:17 2022 +0200
  4. 6f78038 MEDIUM: task: move the shared runqueue to one per thread by Willy Tarreau · Thu Jun 16 15:30:50 2022 +0200
  5. a4fb79b MINOR: task: make rqueue_ticks atomic by Willy Tarreau · Thu Jun 16 15:44:35 2022 +0200
  6. fc5de15 CLEANUP: task: remove the now unused TASK_GLOBAL flag by Willy Tarreau · Thu Jun 16 16:05:02 2022 +0200
  7. 159e3ac MEDIUM: task: remove TASK_SHARED_WQ and only use t->tid by Willy Tarreau · Wed Jun 15 16:48:45 2022 +0200
  8. c44d08e MAJOR: task: replace t->thread_mask with 1<<t->tid when thread mask is needed by Willy Tarreau · Wed Jun 15 15:44:00 2022 +0200
  9. 29ffe26 MAJOR: task: use t->tid instead of ffsl(t->thread_mask) to take the thread ID by Willy Tarreau · Wed Jun 15 14:31:38 2022 +0200
  10. ad548b5 MINOR: task: Add tasklet_wakeup_after() by Frédéric Lécaille · Wed Jun 29 10:53:03 2022 +0200
  11. 9b3aa63 BUG/MINOR: task: fix thread assignment in tasklet_kill() by Willy Tarreau · Wed Jun 15 15:54:56 2022 +0200
  12. f5aef02 OPTIM: task: do not consult shared WQ when we're already full by Willy Tarreau · Tue Jun 14 15:04:34 2022 +0200
  13. 3ccb14d MINOR: thread: get rid of MAX_THREADS_MASK by Willy Tarreau · Tue Jun 14 11:18:40 2022 +0200
  14. 680ed5f MINOR: task: move profiling bit to per-thread by Willy Tarreau · Mon Jun 13 15:59:39 2022 +0200
  15. 6c8babf BUG/MAJOR: sched: prevent rare concurrent wakeup of multi-threaded tasks by Willy Tarreau · Mon Feb 14 10:18:51 2022 +0100
  16. cc5cd5b BUILD: task: use list_to_mt_list() instead of casting list to mt_list by Willy Tarreau · Fri Jan 28 09:48:12 2022 +0100
  17. 3193eb9 BUG/MINOR: task: do not set TASK_F_USR1 for no reason by Willy Tarreau · Thu Oct 21 16:17:29 2021 +0200
  18. a0b9953 REORG: thread/sched: move the thread_info flags to the thread_ctx by Willy Tarreau · Thu Sep 30 18:48:37 2021 +0200
  19. 1a9c922 REORG: thread/sched: move the task_per_thread stuff to thread_ctx by Willy Tarreau · Fri Oct 01 11:30:33 2021 +0200
  20. f9d5e10 REORG: clock: move the updates of cpu/mono time to clock.c by Willy Tarreau · Fri Oct 08 10:43:59 2021 +0200
  21. 5554264 REORG: time: move time-keeping code and variables to clock.c by Willy Tarreau · Fri Oct 08 09:33:24 2021 +0200
  22. d8b325c REORG: task: uninline the loop time measurement code by Willy Tarreau · Wed Oct 06 19:25:38 2021 +0200
  23. 078c257 REORG: sched: moved samp_time and idle_time to task.c as well by Willy Tarreau · Wed Oct 06 15:58:46 2021 +0200
  24. 5d9ddc5 BUILD: tree-wide: add several missing activity.h by Willy Tarreau · Wed Oct 06 19:54:09 2021 +0200
  25. 6136989 MINOR: time: uninline report_idle() and move it to task.c by Willy Tarreau · Thu Sep 30 08:52:11 2021 +0200
  26. 6a2a912 CLEANUP: tasks: remove the long-unused work_lists by Willy Tarreau · Fri Oct 01 18:30:14 2021 +0200
  27. 7a96999 MINOR: tasks: catch TICK_ETERNITY with BUG_ON() in __task_queue() by Willy Tarreau · Thu Sep 30 16:38:09 2021 +0200
  28. 7b36833 MEDIUM: task: implement tasklet kill by Amaury Denoyelle · Wed Jul 28 16:12:57 2021 +0200
  29. e08f4bf MINOR: task: stop including stream.h from task.c by Willy Tarreau · Sat May 08 20:10:13 2021 +0200
  30. c79e898 BUILD: task: remove unused includes from task.c by Willy Tarreau · Sat May 08 20:08:58 2021 +0200
  31. 2b71810 CLEANUP: lists/tree-wide: rename some list operations to avoid some confusion by Willy Tarreau · Wed Apr 21 07:32:39 2021 +0200
  32. 4781b15 CLEANUP: atomic/tree-wide: replace single increments/decrements with inc/dec by Willy Tarreau · Tue Apr 06 13:53:36 2021 +0200
  33. 1db4273 CLEANUP: atomic: add an explicit _FETCH variant for add/sub/and/or by Willy Tarreau · Tue Apr 06 11:44:07 2021 +0200
  34. 1691ba3 MINOR: task: give the scheduler a bit more flexibility in the runqueue size by Willy Tarreau · Wed Mar 10 09:26:24 2021 +0100
  35. 0182516 CLEANUP: config: make the cfg_keyword parsers take a const for the defproxy by Willy Tarreau · Tue Mar 09 09:53:46 2021 +0100
  36. b7e0c63 BUILD: task: fix build at -O0 with threads disabled by Willy Tarreau · Tue Mar 09 09:59:50 2021 +0100
  37. 6fa8bcd MINOR: task: add an application specific flag to the state: TASK_F_USR1 by Willy Tarreau · Tue Mar 02 16:26:05 2021 +0100
  38. 144f84a MEDIUM: task: extend the state field to 32 bits by Willy Tarreau · Tue Mar 02 16:09:26 2021 +0100
  39. db4e238 MINOR: task: stop abusing the nice field to detect a tasklet by Willy Tarreau · Tue Mar 02 15:54:11 2021 +0100
  40. 76390da MINOR: task: only limit TL_HEAVY tasks but not others by Willy Tarreau · Fri Feb 26 10:18:11 2021 +0100
  41. 826fa87 MINOR: task: place the heavy elements in TL_HEAVY by Willy Tarreau · Fri Feb 26 10:13:40 2021 +0100
  42. 401135c MINOR: task: add one extra tasklet class: TL_HEAVY by Willy Tarreau · Fri Feb 26 09:16:22 2021 +0100
  43. 74dea8c MINOR: task: limit the number of subsequent heavy tasks with flag TASK_HEAVY by Willy Tarreau · Fri Feb 26 00:25:51 2021 +0100
  44. 2a54ffb MINOR: task: make tasklet wakeup latency measurements more accurate by Willy Tarreau · Thu Feb 25 09:32:58 2021 +0100
  45. b2285de MINOR: tasks: also compute the tasklet latency when DEBUG_TASK is set by Willy Tarreau · Thu Feb 25 08:39:07 2021 +0100
  46. 45499c5 MINOR: task: make grq_total atomic to move it outside of the grq_lock by Willy Tarreau · Thu Feb 25 07:51:18 2021 +0100
  47. c9afbb1 MINOR: task: don't decrement then increment the local run queue by Willy Tarreau · Thu Feb 25 07:19:45 2021 +0100
  48. 2b363ac MINOR: task: do not use __task_unlink_rq() from process_runnable_tasks() by Willy Tarreau · Thu Feb 25 07:14:58 2021 +0100
  49. e7923c1 MINOR: task: split the counts of local and global tasks picked by Willy Tarreau · Thu Feb 25 07:09:08 2021 +0100
  50. 9c6dbf0 CLEANUP: task: split the large tasklet_wakeup_on() function in two by Willy Tarreau · Wed Feb 24 17:51:38 2021 +0100
  51. 955a11e MINOR: task: move the allocated tasks counter to the per-thread struct by Willy Tarreau · Wed Feb 24 17:03:30 2021 +0100
  52. eeffb3d MINOR: task: limit the remote thread wakeup to the global runqueue only by Willy Tarreau · Wed Feb 24 16:44:51 2021 +0100
  53. 018564e CLEANUP: task: move the tree root detection from __task_wakeup() to task_wakeup() by Willy Tarreau · Wed Feb 24 16:41:11 2021 +0100
  54. 1f3b141 CLEANUP: tasks: use a less confusing name for task_list_size by Willy Tarreau · Wed Feb 24 14:13:40 2021 +0100
  55. 2c41d77 MINOR: tasks: do not maintain the rqueue_size counter anymore by Willy Tarreau · Wed Feb 24 16:13:03 2021 +0100
  56. 9c7b808 MEDIUM: task: remove the tasks_run_queue counter and have one per thread by Willy Tarreau · Wed Feb 24 15:10:07 2021 +0100
  57. c6ba9a0 MINOR: sched: have one runqueue ticks counter per thread by Willy Tarreau · Sat Feb 20 12:49:54 2021 +0100
  58. 4e2282f MEDIUM: tasks/activity: collect per-task statistics when profiling is enabled by Willy Tarreau · Fri Jan 29 00:07:40 2021 +0100
  59. 4d6c594 BUG/MEDIUM: task: close a possible data race condition on a tasklet's list link by Willy Tarreau · Mon Nov 30 14:58:53 2020 +0100
  60. 2da4c31 MINOR: task: remove __tasklet_remove_from_tasklet_list() by Willy Tarreau · Mon Nov 30 14:52:11 2020 +0100
  61. c309dbd MINOR: task: perform atomic counter increments only once per wakeup by Willy Tarreau · Mon Nov 30 15:39:00 2020 +0100
  62. a868c29 MINOR: task: remove tasklet_insert_into_tasklet_list() by Willy Tarreau · Mon Nov 30 15:30:22 2020 +0100
  63. 69a7b8f CLEANUP: task: remove the unused and mishandled global_rqueue_size by Willy Tarreau · Sun Oct 18 14:24:51 2020 +0200
  64. d48ed66 MEDIUM: task: use an upgradable seek lock when scanning the wait queue by Willy Tarreau · Fri Oct 16 09:31:41 2020 +0200
  65. 3cfaa8d BUG/MEDIUM: task: bound the number of tasks picked from the wait queue at once by Willy Tarreau · Fri Oct 16 09:26:22 2020 +0200
  66. 6ce0232 BUILD: task: work around a bogus warning in gcc 4.7/4.8 at -O1 by Willy Tarreau · Fri Aug 21 05:48:34 2020 +0200
  67. e5d79bc MINOR: tasks/debug: add a few BUG_ON() to detect use of wrong timer queue by Willy Tarreau · Wed Jul 22 14:29:42 2020 +0200
  68. 783afbe BUG/MAJOR: tasks: don't requeue global tasks into the local queue by Willy Tarreau · Wed Jul 22 14:12:45 2020 +0200
  69. 273aea4 BUG/MAJOR: tasks: make sure to always lock the shared wait queue if needed by Willy Tarreau · Fri Jul 17 14:37:51 2020 +0200
  70. 950954f MINOR: tasks: use MT_LIST_ADDQ() when killing tasks. by Willy Tarreau · Fri Jul 10 08:32:10 2020 +0200
  71. de4db17 MINOR: lists: rename some MT_LIST operations to clarify them by Willy Tarreau · Fri Jul 10 08:10:29 2020 +0200
  72. 4f58926 BUG/MAJOR: sched: make it work also when not building with DEBUG_STRICT by Willy Tarreau · Thu Jul 02 17:17:42 2020 +0200
  73. 54d3117 BUG/MAJOR: sched: make sure task_kill() always queues the task by Willy Tarreau · Thu Jul 02 14:14:00 2020 +0200
  74. eb8c2c6 MEDIUM: sched: implement task_kill() to kill a task by Willy Tarreau · Tue Jun 30 11:48:48 2020 +0200
  75. 8a6049c MEDIUM: sched: create a new TASK_KILLED task flag by Willy Tarreau · Tue Jun 30 11:48:48 2020 +0200
  76. d99177f MINOR: sched: make sched->task_list_size atomic by Willy Tarreau · Tue Jun 30 11:48:48 2020 +0200
  77. 1553b66 BUG/MINOR: sched: properly cover for a rare MT_LIST_ADDQ() race by Willy Tarreau · Tue Jun 30 13:46:21 2020 +0200
  78. e7723bd MEDIUM: tasks: add a tune.sched.low-latency option by Willy Tarreau · Wed Jun 24 11:11:02 2020 +0200
  79. 59153fe MINOR: tasks: make run_tasks_from_lists() scan the queues itself by Willy Tarreau · Wed Jun 24 10:17:29 2020 +0200
  80. ba48d5c MINOR: tasks: pass the queue index to run_task_from_list() by Willy Tarreau · Wed Jun 24 09:54:24 2020 +0200
  81. 49f90bf MINOR: tasks: add a mask of the queues with active tasklets by Willy Tarreau · Wed Jun 24 09:39:48 2020 +0200
  82. c0a08ba MINOR: tasks: make current_queue an index instead of a pointer by Willy Tarreau · Wed Jun 24 09:19:50 2020 +0200
  83. 3ef7a19 MEDIUM: tasks: apply a fair CPU distribution between tasklet classes by Willy Tarreau · Wed Jun 24 07:21:08 2020 +0200
  84. 116ef22 MINOR: task: add a new pointer to current tasklet queue by Willy Tarreau · Tue Jun 23 16:35:38 2020 +0200
  85. 0c0c85e BUG/MINOR: tasks: make sure never to exceed max_processed by Willy Tarreau · Tue Jun 23 11:32:35 2020 +0200
  86. 5c8be27 MEDIUM: tasks: also process late wakeups in process_runnable_tasks() by Willy Tarreau · Fri Jun 19 12:17:55 2020 +0200
  87. 77015ab MEDIUM: tasks: clean up the front side of the wait queue in wake_expired_tasks() by Willy Tarreau · Fri Jun 19 11:50:27 2020 +0200
  88. b255105 CLEANUP: include: tree-wide alphabetical sort of include files by Willy Tarreau · Tue Jun 09 09:07:15 2020 +0200
  89. dfd3de8 REORG: include: move stream.h to haproxy/stream{,-t}.h by Willy Tarreau · Thu Jun 04 23:46:14 2020 +0200
  90. a264d96 REORG: include: move proxy.h to haproxy/proxy{,-t}.h by Willy Tarreau · Thu Jun 04 22:29:18 2020 +0200
  91. cea0e1b REORG: include: move task.h to haproxy/task{,-t}.h by Willy Tarreau · Thu Jun 04 17:25:40 2020 +0200
  92. 0f6ffd6 REORG: include: move fd.h to haproxy/fd{,-t}.h by Willy Tarreau · Wed Jun 03 19:33:00 2020 +0200
  93. 48fbcae REORG: tools: split common/standard.h into haproxy/tools{,-t}.h by Willy Tarreau · Wed Jun 03 18:09:46 2020 +0200
  94. d0ef439 REORG: include: move common/memory.h to haproxy/pool.h by Willy Tarreau · Tue Jun 02 09:38:52 2020 +0200
  95. 6634794 REORG: include: move freq_ctr to haproxy/ by Willy Tarreau · Mon Jun 01 12:18:08 2020 +0200
  96. 92b4f13 REORG: include: move time.h from common/ to haproxy/ by Willy Tarreau · Mon Jun 01 11:05:15 2020 +0200
  97. af613e8 CLEANUP: thread: rename __decl_hathreads() to __decl_thread() by Willy Tarreau · Fri Jun 05 08:40:51 2020 +0200
  98. 853b297 REORG: include: split mini-clist into haproxy/list and list-t.h by Willy Tarreau · Wed May 27 18:01:47 2020 +0200
  99. 4c7e4b7 REORG: include: update all files to use haproxy/api.h or api-t.h if needed by Willy Tarreau · Wed May 27 12:58:42 2020 +0200
  100. 8d2b777 REORG: ebtree: move the include files from ebtree to include/import/ by Willy Tarreau · Wed May 27 10:58:19 2020 +0200