1. 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
  2. 2da4c31 MINOR: task: remove __tasklet_remove_from_tasklet_list() by Willy Tarreau · Mon Nov 30 14:52:11 2020 +0100
  3. c309dbd MINOR: task: perform atomic counter increments only once per wakeup by Willy Tarreau · Mon Nov 30 15:39:00 2020 +0100
  4. a868c29 MINOR: task: remove tasklet_insert_into_tasklet_list() by Willy Tarreau · Mon Nov 30 15:30:22 2020 +0100
  5. 69a7b8f CLEANUP: task: remove the unused and mishandled global_rqueue_size by Willy Tarreau · Sun Oct 18 14:24:51 2020 +0200
  6. d48ed66 MEDIUM: task: use an upgradable seek lock when scanning the wait queue by Willy Tarreau · Fri Oct 16 09:31:41 2020 +0200
  7. 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
  8. 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
  9. 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
  10. 783afbe BUG/MAJOR: tasks: don't requeue global tasks into the local queue by Willy Tarreau · Wed Jul 22 14:12:45 2020 +0200
  11. 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
  12. 950954f MINOR: tasks: use MT_LIST_ADDQ() when killing tasks. by Willy Tarreau · Fri Jul 10 08:32:10 2020 +0200
  13. de4db17 MINOR: lists: rename some MT_LIST operations to clarify them by Willy Tarreau · Fri Jul 10 08:10:29 2020 +0200
  14. 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
  15. 54d3117 BUG/MAJOR: sched: make sure task_kill() always queues the task by Willy Tarreau · Thu Jul 02 14:14:00 2020 +0200
  16. eb8c2c6 MEDIUM: sched: implement task_kill() to kill a task by Willy Tarreau · Tue Jun 30 11:48:48 2020 +0200
  17. 8a6049c MEDIUM: sched: create a new TASK_KILLED task flag by Willy Tarreau · Tue Jun 30 11:48:48 2020 +0200
  18. d99177f MINOR: sched: make sched->task_list_size atomic by Willy Tarreau · Tue Jun 30 11:48:48 2020 +0200
  19. 1553b66 BUG/MINOR: sched: properly cover for a rare MT_LIST_ADDQ() race by Willy Tarreau · Tue Jun 30 13:46:21 2020 +0200
  20. e7723bd MEDIUM: tasks: add a tune.sched.low-latency option by Willy Tarreau · Wed Jun 24 11:11:02 2020 +0200
  21. 59153fe MINOR: tasks: make run_tasks_from_lists() scan the queues itself by Willy Tarreau · Wed Jun 24 10:17:29 2020 +0200
  22. ba48d5c MINOR: tasks: pass the queue index to run_task_from_list() by Willy Tarreau · Wed Jun 24 09:54:24 2020 +0200
  23. 49f90bf MINOR: tasks: add a mask of the queues with active tasklets by Willy Tarreau · Wed Jun 24 09:39:48 2020 +0200
  24. c0a08ba MINOR: tasks: make current_queue an index instead of a pointer by Willy Tarreau · Wed Jun 24 09:19:50 2020 +0200
  25. 3ef7a19 MEDIUM: tasks: apply a fair CPU distribution between tasklet classes by Willy Tarreau · Wed Jun 24 07:21:08 2020 +0200
  26. 116ef22 MINOR: task: add a new pointer to current tasklet queue by Willy Tarreau · Tue Jun 23 16:35:38 2020 +0200
  27. 0c0c85e BUG/MINOR: tasks: make sure never to exceed max_processed by Willy Tarreau · Tue Jun 23 11:32:35 2020 +0200
  28. 5c8be27 MEDIUM: tasks: also process late wakeups in process_runnable_tasks() by Willy Tarreau · Fri Jun 19 12:17:55 2020 +0200
  29. 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
  30. b255105 CLEANUP: include: tree-wide alphabetical sort of include files by Willy Tarreau · Tue Jun 09 09:07:15 2020 +0200
  31. dfd3de8 REORG: include: move stream.h to haproxy/stream{,-t}.h by Willy Tarreau · Thu Jun 04 23:46:14 2020 +0200
  32. a264d96 REORG: include: move proxy.h to haproxy/proxy{,-t}.h by Willy Tarreau · Thu Jun 04 22:29:18 2020 +0200
  33. cea0e1b REORG: include: move task.h to haproxy/task{,-t}.h by Willy Tarreau · Thu Jun 04 17:25:40 2020 +0200
  34. 0f6ffd6 REORG: include: move fd.h to haproxy/fd{,-t}.h by Willy Tarreau · Wed Jun 03 19:33:00 2020 +0200
  35. 48fbcae REORG: tools: split common/standard.h into haproxy/tools{,-t}.h by Willy Tarreau · Wed Jun 03 18:09:46 2020 +0200
  36. d0ef439 REORG: include: move common/memory.h to haproxy/pool.h by Willy Tarreau · Tue Jun 02 09:38:52 2020 +0200
  37. 6634794 REORG: include: move freq_ctr to haproxy/ by Willy Tarreau · Mon Jun 01 12:18:08 2020 +0200
  38. 92b4f13 REORG: include: move time.h from common/ to haproxy/ by Willy Tarreau · Mon Jun 01 11:05:15 2020 +0200
  39. af613e8 CLEANUP: thread: rename __decl_hathreads() to __decl_thread() by Willy Tarreau · Fri Jun 05 08:40:51 2020 +0200
  40. 853b297 REORG: include: split mini-clist into haproxy/list and list-t.h by Willy Tarreau · Wed May 27 18:01:47 2020 +0200
  41. 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
  42. 8d2b777 REORG: ebtree: move the include files from ebtree to include/import/ by Willy Tarreau · Wed May 27 10:58:19 2020 +0200
  43. 856aabc CLEANUP: assorted typo fixes in the code and comments by Ilya Shipitsin · Thu Apr 16 23:51:34 2020 +0500
  44. c62d9ab MINOR: tasks: Provide the tasklet to the callback. by Olivier Houchard · Tue Mar 17 18:15:04 2020 +0100
  45. 27d00c0 MINOR: task: export run_tasks_from_list by Willy Tarreau · Tue Mar 03 14:59:28 2020 +0100
  46. 952c264 MINOR: task: don't set TASK_RUNNING on tasklets by Willy Tarreau · Fri Jan 31 16:39:30 2020 +0100
  47. 1dfc9bb OPTIM: task: readjust CPU bandwidth distribution since last update by Willy Tarreau · Fri Jan 31 17:55:09 2020 +0100
  48. d23d413 MINOR: task: make sched->current also reflect tasklets by Willy Tarreau · Fri Jan 31 10:39:03 2020 +0100
  49. bb23883 MINOR: task: permanently flag tasklets waking themselves up by Willy Tarreau · Fri Jan 31 10:48:10 2020 +0100
  50. c633607 OPTIM: task: refine task classes default CPU bandwidth ratios by Willy Tarreau · Fri Jan 31 06:26:39 2020 +0100
  51. a62917b MEDIUM: tasks: implement 3 different tasklet classes with their own queues by Willy Tarreau · Thu Jan 30 18:37:28 2020 +0100
  52. 4ffa0b5 MINOR: tasks: move the list walking code to its own function by Willy Tarreau · Thu Jan 30 18:13:13 2020 +0100
  53. dd0e89a BUG/MAJOR: task: add a new TASK_SHARED_WQ flag to fix foreing requeuing by Willy Tarreau · Thu Dec 19 07:39:06 2019 +0100
  54. 8fe4253 MINOR: task: only check TASK_WOKEN_ANY to decide to requeue a task by Willy Tarreau · Thu Dec 19 07:34:20 2019 +0100
  55. c49ba52 MINOR: tasks: split wake_expired_tasks() in two parts to avoid useless wakeups by Willy Tarreau · Wed Dec 11 08:12:23 2019 +0100
  56. 0691046 MEDIUM: task: Split the tasklet list into two lists. by Olivier Houchard · Fri Oct 11 16:35:01 2019 +0200
  57. 0730867 BUG/MEDIUM: tasks: Don't forget to decrement tasks_run_queue. by Olivier Houchard · Thu Oct 03 14:55:34 2019 +0200
  58. d022e9c MINOR: task: introduce a thread-local "sched" variable for local scheduler stuff by Willy Tarreau · Tue Sep 24 08:25:15 2019 +0200
  59. d66d756 MINOR: task: split the tasklet vs task code in process_runnable_tasks() by Willy Tarreau · Tue Sep 24 07:34:09 2019 +0200
  60. 4c1e1ad CLEANUP: task: cache the task_per_thread pointer by Willy Tarreau · Tue Sep 24 07:19:08 2019 +0200
  61. 9b48c62 CLEANUP: task: remove impossible test by Willy Tarreau · Tue Sep 24 07:02:40 2019 +0200
  62. ff1e9f3 MEDIUM: tasklets: Make the tasklet list a struct mt_list. by Olivier Houchard · Fri Sep 20 17:18:35 2019 +0200
  63. 859dc80 MEDIUM: list: Separate "locked" list from regular list. by Olivier Houchard · Thu Aug 08 15:47:21 2019 +0200
  64. 64e6012 MINOR: task: introduce work lists by Willy Tarreau · Fri Jul 12 08:31:17 2019 +0200
  65. bd20a9d BUG: tasks: fix bug introduced by latest scheduler cleanup by Willy Tarreau · Fri Jun 14 18:05:54 2019 +0200
  66. 86eded6 CLEANUP: tasks: rename task_remove_from_tasklet_list() to tasklet_remove_* by Willy Tarreau · Fri Jun 14 14:47:49 2019 +0200
  67. 5598d17 BUILD: task: fix a build warning when threads are disabled by Willy Tarreau · Tue Jun 04 17:16:29 2019 +0200
  68. cfbb3e6 MEDIUM: tasks: Get rid of active_tasks_mask. by Olivier Houchard · Wed May 29 19:22:43 2019 +0200
  69. 1e928c0 MEDIUM: task: don't grab the WR lock just to check the WQ by Willy Tarreau · Tue May 28 18:57:25 2019 +0200
  70. ef28dc1 MINOR: task: turn the WQ lock to an RW_LOCK by Willy Tarreau · Tue May 28 18:48:07 2019 +0200
  71. e6a02fa MINOR: threads: add a "stuck" flag to the thread_info struct by Willy Tarreau · Wed May 22 07:06:44 2019 +0200
  72. 01f3489 MINOR: task: put barriers after each write to curr_task by Willy Tarreau · Fri May 17 11:46:04 2019 +0200
  73. bc13bec MINOR: activity: report context switch counts instead of rates by Willy Tarreau · Tue Apr 30 14:55:18 2019 +0200
  74. d9add3a MINOR: activity: make the profiling status per thread and not global by Willy Tarreau · Thu Apr 25 08:57:41 2019 +0200
  75. 0212fad MINOR: tasks/activity: report the context switch and task wakeup rates by Willy Tarreau · Wed Apr 24 08:10:57 2019 +0200
  76. ed1a6a0 MEDIUM: tasks: Use __ha_barrier_store after modifying global_tasks_mask. by Olivier Houchard · Thu Apr 18 14:12:51 2019 +0200
  77. 1cfac37 MEDIUM: tasks: Don't account a destroyed task as a runned task. by Olivier Houchard · Wed Apr 17 22:53:41 2019 +0200
  78. 3f795f7 MEDIUM: tasks: Merge task_delete() and task_free() into task_destroy(). by Olivier Houchard · Wed Apr 17 22:51:06 2019 +0200
  79. 03dd029 CLEANUP: task: remain consistent when using the task's handler by Willy Tarreau · Wed Apr 17 22:32:27 2019 +0200
  80. 0c7a4b6 MINOR: tasks: Don't set the TASK_RUNNING flag when adding in the tasklet list. by Olivier Houchard · Wed Apr 17 19:14:56 2019 +0200
  81. de82aea BUG/MEDIUM: tasks: Make sure we modify global_tasks_mask with the rq_lock. by Olivier Houchard · Wed Apr 17 19:10:22 2019 +0200
  82. b038007 BUG/MEDIUM: tasks: Make sure we set TASK_QUEUED before adding a task to the rq. by Willy Tarreau · Wed Apr 17 11:47:18 2019 +0200
  83. 3466e3c BUILD: task/thread: fix single-threaded build of task.c by Willy Tarreau · Mon Apr 15 18:52:40 2019 +0200
  84. c8da044 MINOR: tasks: restore the lower latency scheduling when niced tasks are present by Willy Tarreau · Mon Apr 15 09:33:42 2019 +0200
  85. 2d1fd0a MEDIUM: tasks: only base the nice offset on the run queue depth by Willy Tarreau · Mon Apr 15 09:18:31 2019 +0200
  86. cde7902 MEDIUM: tasks: improve fairness between the local and global queues by Willy Tarreau · Fri Apr 12 18:03:41 2019 +0200
  87. 24f382f CLEANUP: task: do not export rq_next anymore by Willy Tarreau · Fri Apr 12 16:10:55 2019 +0200
  88. 587a813 BUG/MINOR: tasks: make sure the first task to be queued keeps its nice value by Willy Tarreau · Fri Apr 12 15:18:37 2019 +0200
  89. f8bce31 BUG/MEDIUM: task/threads: address a fairness issue between local and global tasks by Willy Tarreau · Fri Apr 12 15:11:02 2019 +0200
  90. e73256f BUG/MEDIUM: task/h2: add an idempotent task removal fucntion by Willy Tarreau · Mon Mar 25 18:02:54 2019 +0100
  91. 1b32790 BUG/MEDIUM: tasks: Make sure we wake sleeping threads if needed. by Olivier Houchard · Fri Mar 15 00:23:10 2019 +0100
  92. 4c283285 MEDIUM: task: Use the new _HA_ATOMIC_* macros. by Olivier Houchard · Fri Mar 08 18:48:47 2019 +0100
  93. d2b5d16 MEDIUM: various: Use __ha_barrier_atomic* when relevant. by Olivier Houchard · Fri Mar 08 13:47:21 2019 +0100
  94. 155acff BUG/MINOR: task: close a tiny race in the inter-thread wakeup by Willy Tarreau · Mon Feb 04 10:26:53 2019 +0100
  95. 1ee55fd MEDIUM: tasks: check the global task mask instead of the thread number by Willy Tarreau · Fri Dec 14 15:49:45 2018 +0100
  96. b582339 BUG/MEDIUM: mworker: fix several typos in mworker_cleantasks() by William Lallemand · Thu Dec 06 15:14:37 2018 +0100
  97. 27f3fa5 BUG/MEDIUM: mworker: stop every tasks in the master by William Lallemand · Thu Dec 06 14:05:20 2018 +0100
  98. b6b3df3 MEDIUM: initcall: use initcalls for a few initialization functions by Willy Tarreau · Mon Nov 26 16:31:20 2018 +0100
  99. 8ceae72 MEDIUM: init: use initcall for all fixed size pool creations by Willy Tarreau · Mon Nov 26 11:58:30 2018 +0100
  100. 86abe44 MEDIUM: init: use self-initializing spinlocks and rwlocks by Willy Tarreau · Sun Nov 25 20:12:18 2018 +0100