1. 77e3b4a CLEANUP: assorted typo fixes in the code and comments by Ilya Shipitsin · Tue Mar 10 12:06:11 2020 +0500
  2. 27d00c0 MINOR: task: export run_tasks_from_list by Willy Tarreau · Tue Mar 03 14:59:28 2020 +0100
  3. b30a153 MINOR: task: detect self-wakeups on tl==sched->current instead of TASK_RUNNING by Willy Tarreau · Fri Jan 31 16:37:34 2020 +0100
  4. bb23883 MINOR: task: permanently flag tasklets waking themselves up by Willy Tarreau · Fri Jan 31 10:48:10 2020 +0100
  5. a17664d MEDIUM: tasks: automatically requeue into the bulk queue an already running tasklet by Willy Tarreau · Thu Jan 30 18:59:43 2020 +0100
  6. a62917b MEDIUM: tasks: implement 3 different tasklet classes with their own queues by Willy Tarreau · Thu Jan 30 18:37:28 2020 +0100
  7. 3c4f40a BUG/MEDIUM: tasks: Use the MT macros in tasklet_free(). by Olivier Houchard · Fri Jan 10 16:46:48 2020 +0100
  8. 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
  9. 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
  10. 440d09b BUG/MINOR: tasks: only requeue a task if it was already in the queue by Willy Tarreau · Wed Dec 11 09:11:58 2019 +0100
  11. 0742c31 BUG/MEDIUM: tasks: Make sure we switch wait queues in task_set_affinity(). by Olivier Houchard · Thu Dec 05 15:11:19 2019 +0100
  12. 7031e3d BUG/MEDIUM: tasks: Make tasklet_remove_from_tasklet_list() no matter the tasklet. by Olivier Houchard · Fri Nov 08 15:41:55 2019 +0100
  13. 8cdc167 BUG/MEDIUM: task: make tasklets either local or shared but not both at once by Willy Tarreau · Fri Oct 18 06:43:53 2019 +0200
  14. 891b5ef BUG/MEDIUM: tasklet: properly compute the sleeping threads mask in tasklet_wakeup() by Willy Tarreau · Fri Oct 18 08:45:41 2019 +0200
  15. 0691046 MEDIUM: task: Split the tasklet list into two lists. by Olivier Houchard · Fri Oct 11 16:35:01 2019 +0200
  16. bba1a26 BUG/MEDIUM: tasklets: Make sure we're waking the target thread if it sleeps. by Olivier Houchard · Tue Sep 24 14:55:28 2019 +0200
  17. d022e9c MINOR: task: introduce a thread-local "sched" variable for local scheduler stuff by Willy Tarreau · Tue Sep 24 08:25:15 2019 +0200
  18. d66d756 MINOR: task: split the tasklet vs task code in process_runnable_tasks() by Willy Tarreau · Tue Sep 24 07:34:09 2019 +0200
  19. ff1e9f3 MEDIUM: tasklets: Make the tasklet list a struct mt_list. by Olivier Houchard · Fri Sep 20 17:18:35 2019 +0200
  20. 859dc80 MEDIUM: list: Separate "locked" list from regular list. by Olivier Houchard · Thu Aug 08 15:47:21 2019 +0200
  21. 64e6012 MINOR: task: introduce work lists by Willy Tarreau · Fri Jul 12 08:31:17 2019 +0200
  22. bd20a9d BUG: tasks: fix bug introduced by latest scheduler cleanup by Willy Tarreau · Fri Jun 14 18:05:54 2019 +0200
  23. 86eded6 CLEANUP: tasks: rename task_remove_from_tasklet_list() to tasklet_remove_* by Willy Tarreau · Fri Jun 14 14:47:49 2019 +0200
  24. 3cec0f9 BUG/MINOR: task: prevent schedulable tasks from starving under high I/O activity by Willy Tarreau · Fri Jun 14 08:30:10 2019 +0200
  25. cfbb3e6 MEDIUM: tasks: Get rid of active_tasks_mask. by Olivier Houchard · Wed May 29 19:22:43 2019 +0200
  26. ef28dc1 MINOR: task: turn the WQ lock to an RW_LOCK by Willy Tarreau · Tue May 28 18:48:07 2019 +0200
  27. 29bf96d MINOR: task: always reset curr_task when freeing a task or tasklet by Willy Tarreau · Fri May 17 14:16:51 2019 +0200
  28. aa1e1be MINOR: task: export global_task_mask by Willy Tarreau · Thu May 16 17:37:27 2019 +0200
  29. f656279 CLEANUP: task: remove unneeded tests before task_destroy() by Willy Tarreau · Tue May 07 19:05:35 2019 +0200
  30. 75bc6d3 BUG/MEDIUM: tasks: fix possible segfault on task_destroy() by Dragan Dosen · Tue May 07 15:25:25 2019 +0200
  31. 9634e86 CLEANUP: task: move the task_per_thread definition to task.h by Willy Tarreau · Tue Apr 30 14:36:47 2019 +0200
  32. 3f795f7 MEDIUM: tasks: Merge task_delete() and task_free() into task_destroy(). by Olivier Houchard · Wed Apr 17 22:51:06 2019 +0200
  33. 8c12e2f MINOR: task/thread: factor out a wake-up condition by Willy Tarreau · Wed Apr 17 20:52:51 2019 +0200
  34. a70bfaa BUG/MAJOR: task: make sure never to delete a queued task by Willy Tarreau · Wed Apr 17 21:58:23 2019 +0200
  35. 4a1be0c MEDIUM: tasks: No longer use rq.node.leaf_p as a lock. by Olivier Houchard · Wed Apr 17 19:13:07 2019 +0200
  36. 5c964f7 MINOR: tasks: Don't consider we can wake task with tasklet_wakeup(). by Olivier Houchard · Wed Apr 17 19:11:58 2019 +0200
  37. 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
  38. 24f382f CLEANUP: task: do not export rq_next anymore by Willy Tarreau · Fri Apr 12 16:10:55 2019 +0200
  39. a33d39a CLEANUP: task: only perform a LIST_DEL() when the list is not empty by Willy Tarreau · Mon Mar 25 18:10:53 2019 +0100
  40. e73256f BUG/MEDIUM: task/h2: add an idempotent task removal fucntion by Willy Tarreau · Mon Mar 25 18:02:54 2019 +0100
  41. 1d7f37a BUG/MAJOR: tasks: Use the TASK_GLOBAL flag to know if we're in the global rq. by Olivier Houchard · Thu Mar 14 16:14:04 2019 +0100
  42. 4c283285 MEDIUM: task: Use the new _HA_ATOMIC_* macros. by Olivier Houchard · Fri Mar 08 18:48:47 2019 +0100
  43. 1e56c70 OPTIM: task: limit the impact of memory barriers in taks_remove_from_task_list() by Willy Tarreau · Thu Mar 07 18:44:12 2019 +0100
  44. b238b12 MINOR: task: use LIST_DEL_INIT() to remove a task from the queue by Willy Tarreau · Wed Mar 06 19:34:25 2019 +0100
  45. bc9d984 BUG/MAJOR: fd/threads, task/threads: ensure all spin locks are unlocked by Richard Russo · Wed Feb 20 12:43:45 2019 -0800
  46. 13afcb7 BUG/MINOR: task: fix possibly missed event in inter-thread wakeups by Willy Tarreau · Sun Jan 27 17:41:27 2019 +0100
  47. 09e498f BUG/MEDIUM: tasks: Decrement tasks_run_queue in tasklet_free(). by Olivier Houchard · Mon Dec 24 14:03:10 2018 +0100
  48. 27f3fa5 BUG/MEDIUM: mworker: stop every tasks in the master by William Lallemand · Thu Dec 06 14:05:20 2018 +0100
  49. b6b3df3 MEDIUM: initcall: use initcalls for a few initialization functions by Willy Tarreau · Mon Nov 26 16:31:20 2018 +0100
  50. 9efd745 MEDIUM: tasks: collect per-task CPU time and latency by Willy Tarreau · Thu May 31 14:48:54 2018 +0200
  51. 8d8747a OPTIM: tasks: group all tree roots per cache line by Willy Tarreau · Mon Oct 15 16:12:48 2018 +0200
  52. b20aa9e MAJOR: tasks: create per-thread wait queues by Willy Tarreau · Mon Oct 15 14:52:21 2018 +0200
  53. 931624a BUG/MEDIUM: tasks: Don't forget to decrement task_list_size in tasklet_free(). by Olivier Houchard · Wed Sep 12 14:55:03 2018 +0200
  54. abedf5f BUG/MEDIUM: tasklets: Add the thread as active when waking a tasklet. by Olivier Houchard · Fri Aug 17 18:57:51 2018 +0200
  55. 5d18718 MINOR: tasks: Allow tasklet_wakeup() to wakeup a task. by Olivier Houchard · Wed Aug 01 15:58:44 2018 +0200
  56. 9b03c0c MINOR: tasks: Make active_tasks_mask volatile. by Olivier Houchard · Thu Jul 26 18:45:22 2018 +0200
  57. 77551ee BUG/MEDIUM: tasks: make __task_unlink_rq responsible for the rqueue size. by Olivier Houchard · Thu Jul 26 15:59:38 2018 +0200
  58. 76e4518 MINOR: tasks: Add a flag that tells if we're in the global runqueue. by Olivier Houchard · Thu Jul 26 16:19:58 2018 +0200
  59. e17c2d3 MINOR: tasklets: Don't attempt to add a tasklet in the list twice. by Olivier Houchard · Tue Jul 17 18:29:22 2018 +0200
  60. 9ddaf79 MINOR: tasklet: Set process to NULL. by Olivier Houchard · Thu Jul 19 16:02:16 2018 +0200
  61. dcd6f3a MINOR: tasks: Make sure we correctly init and deinit a tasklet. by Olivier Houchard · Fri Jun 08 17:08:19 2018 +0200
  62. b1ca58b MINOR: tasks: Don't define rqueue if we're building without threads. by Olivier Houchard · Wed Jun 06 14:22:03 2018 +0200
  63. e13ab8b BUG/MEDIUM: tasks: Use the local runqueue when building without threads. by Olivier Houchard · Wed Jun 06 14:01:08 2018 +0200
  64. caa8a37 MINOR: task: Fix a compiler warning by adding a cast. by David Carlier · Fri Jun 01 14:32:39 2018 +0200
  65. 9d5422a MINOR: task/notification: Is notifications registered ? by Thierry FOURNIER · Wed May 30 11:40:08 2018 +0200
  66. 09eeb76 BUG/MEDIUM: tasks: Don't forget to increase/decrease tasks_run_queue. by Olivier Houchard · Mon May 28 13:51:06 2018 +0200
  67. b0bdae7 MAJOR: tasks: Introduce tasklets. by Olivier Houchard · Fri May 18 18:45:28 2018 +0200
  68. f6e6dc1 MAJOR: tasks: Create a per-thread runqueue. by Olivier Houchard · Fri May 18 18:38:23 2018 +0200
  69. 9b36cb4 BUG/MEDIUM: task: Don't free a task that is about to be run. by Olivier Houchard · Fri May 04 15:46:16 2018 +0200
  70. cb14688 BUG/MEDIUM: lua/notification: memory leak by Thierry FOURNIER · Sun Dec 10 17:10:57 2017 +0100
  71. d5b7983 DOC: notifications: add precisions about thread usage by Thierry FOURNIER · Sun Dec 10 17:14:07 2017 +0100
  72. bafbe01 CLEANUP: pools: rename all pool functions and pointers to remove this "2" by Willy Tarreau · Fri Nov 24 17:34:44 2017 +0100
  73. 3911ee8 MINOR: tasks: Use a bitfield to track tasks activity per-thread by Christopher Faulet · Tue Nov 14 10:26:53 2017 +0100
  74. 9dcf9b6 MINOR: threads: Use __decl_hathreads to declare locks by Christopher Faulet · Mon Nov 13 10:34:01 2017 +0100
  75. 2a944ee BUILD: threads: Rename SPIN/RWLOCK macros using HA_ prefix by Christopher Faulet · Tue Nov 07 10:42:54 2017 +0100
  76. 8d38805 MAJOR: task: make use of the scope-aware ebtree functions by Willy Tarreau · Sun Nov 05 13:34:20 2017 +0100
  77. f65610a CLEANUP: threads: rename process_mask to thread_mask by Willy Tarreau · Tue Oct 31 16:06:06 2017 +0100
  78. 738a6d7 MEDIUM: threads/tasks: Add lock around notifications by Thierry FOURNIER · Mon Jul 17 00:14:07 2017 +0200
  79. c60def8 MAJOR: threads/task: handle multithread on task scheduler by Emeric Brun · Wed Sep 27 14:59:38 2017 +0200
  80. d697596 MINOR: tasks: Move Lua notification from Lua to tasks by Thierry FOURNIER · Wed Jul 12 14:31:10 2017 +0200
  81. f421999 MINOR: task: always preinitialize the task's timeout in task_init() by Willy Tarreau · Mon Jul 24 17:52:58 2017 +0200
  82. 0194897 MAJOR: task: task scheduler rework. by Emeric Brun · Thu Mar 30 15:37:25 2017 +0200
  83. 34c5cc9 MINOR: task: Rename run_queue and run_queue_cur counters by Christopher Faulet · Tue Dec 06 09:15:30 2016 +0100
  84. 9cf7c4b MAJOR: poll: only rely on wake_expired_tasks() to compute the wait delay by Thierry FOURNIER · Mon Dec 15 13:26:01 2014 +0100
  85. 501260b MEDIUM: task: always ensure that the run queue is consistent by Willy Tarreau · Mon Feb 23 16:07:01 2015 +0100
  86. eb11889 MINOR: task: release the task pool when stopping by Willy Tarreau · Thu Nov 13 16:57:19 2014 +0100
  87. 918ff60 [MAJOR] proxy: finally get rid of maintain_proxies() by Willy Tarreau · Mon Jul 25 16:33:49 2011 +0200
  88. 26e4881 [MINOR] task: new function task_schedule() to schedule a wake up by Willy Tarreau · Mon Jul 25 14:30:42 2011 +0200
  89. 24f4efa [MEDIUM] signals: add support for registering functions and tasks by Willy Tarreau · Fri Aug 27 17:56:48 2010 +0200
  90. 45cb4fb [MEDIUM] build: switch ebtree users to use new ebtree version by Willy Tarreau · Mon Oct 26 21:10:04 2009 +0100
  91. 3884cba [MINOR] show sess: report number of calls to each task by Willy Tarreau · Sat Mar 28 17:54:35 2009 +0100
  92. c7bdf09 [MINOR] stats: report number of tasks (active and running) by Willy Tarreau · Sat Mar 21 18:33:52 2009 +0100
  93. a461318 [MINOR] task: keep a task count and clean up task creators by Willy Tarreau · Sat Mar 21 18:13:21 2009 +0100
  94. 26ca34e [BUG] scheduler: fix improper handling of duplicates __task_queue() by Willy Tarreau · Sat Mar 21 12:51:40 2009 +0100
  95. e35c94a [MEDIUM] scheduler: get rid of the 4 trees thanks and use ebtree v4.1 by Willy Tarreau · Sat Mar 21 10:01:42 2009 +0100
  96. 531cf0c [OPTIM] task: reduce the number of calls to task_queue() by Willy Tarreau · Sun Mar 08 16:35:27 2009 +0100
  97. d0a201b [CLEANUP] task: distinguish between clock ticks and timers by Willy Tarreau · Sun Mar 08 15:53:06 2009 +0100
  98. 4726f53 [OPTIM] task: don't unlink a task from a wait queue when waking it up by Willy Tarreau · Sat Mar 07 17:25:21 2009 +0100
  99. fdccded [MEDIUM] indicate a reason for a task wakeup by Willy Tarreau · Fri Aug 29 18:19:04 2008 +0200
  100. 4df8206 [OPTIM] reduce the number of calls to task_wakeup() by Willy Tarreau · Fri Aug 29 15:26:14 2008 +0200