1. 8fe4253 MINOR: task: only check TASK_WOKEN_ANY to decide to requeue a task by Willy Tarreau · 4 years, 7 months ago
  2. c49ba52 MINOR: tasks: split wake_expired_tasks() in two parts to avoid useless wakeups by Willy Tarreau · 4 years, 7 months ago
  3. 0691046 MEDIUM: task: Split the tasklet list into two lists. by Olivier Houchard · 4 years, 9 months ago
  4. 0730867 BUG/MEDIUM: tasks: Don't forget to decrement tasks_run_queue. by Olivier Houchard · 4 years, 9 months ago
  5. d022e9c MINOR: task: introduce a thread-local "sched" variable for local scheduler stuff by Willy Tarreau · 4 years, 10 months ago
  6. d66d756 MINOR: task: split the tasklet vs task code in process_runnable_tasks() by Willy Tarreau · 4 years, 10 months ago
  7. 4c1e1ad CLEANUP: task: cache the task_per_thread pointer by Willy Tarreau · 4 years, 10 months ago
  8. 9b48c62 CLEANUP: task: remove impossible test by Willy Tarreau · 4 years, 10 months ago
  9. ff1e9f3 MEDIUM: tasklets: Make the tasklet list a struct mt_list. by Olivier Houchard · 4 years, 10 months ago
  10. 859dc80 MEDIUM: list: Separate "locked" list from regular list. by Olivier Houchard · 5 years ago
  11. 64e6012 MINOR: task: introduce work lists by Willy Tarreau · 5 years ago
  12. bd20a9d BUG: tasks: fix bug introduced by latest scheduler cleanup by Willy Tarreau · 5 years ago
  13. 86eded6 CLEANUP: tasks: rename task_remove_from_tasklet_list() to tasklet_remove_* by Willy Tarreau · 5 years ago
  14. 5598d17 BUILD: task: fix a build warning when threads are disabled by Willy Tarreau · 5 years ago
  15. cfbb3e6 MEDIUM: tasks: Get rid of active_tasks_mask. by Olivier Houchard · 5 years ago
  16. 1e928c0 MEDIUM: task: don't grab the WR lock just to check the WQ by Willy Tarreau · 5 years ago
  17. ef28dc1 MINOR: task: turn the WQ lock to an RW_LOCK by Willy Tarreau · 5 years ago
  18. e6a02fa MINOR: threads: add a "stuck" flag to the thread_info struct by Willy Tarreau · 5 years ago
  19. 01f3489 MINOR: task: put barriers after each write to curr_task by Willy Tarreau · 5 years ago
  20. bc13bec MINOR: activity: report context switch counts instead of rates by Willy Tarreau · 5 years ago
  21. d9add3a MINOR: activity: make the profiling status per thread and not global by Willy Tarreau · 5 years ago
  22. 0212fad MINOR: tasks/activity: report the context switch and task wakeup rates by Willy Tarreau · 5 years ago
  23. ed1a6a0 MEDIUM: tasks: Use __ha_barrier_store after modifying global_tasks_mask. by Olivier Houchard · 5 years ago
  24. 1cfac37 MEDIUM: tasks: Don't account a destroyed task as a runned task. by Olivier Houchard · 5 years ago
  25. 3f795f7 MEDIUM: tasks: Merge task_delete() and task_free() into task_destroy(). by Olivier Houchard · 5 years ago
  26. 03dd029 CLEANUP: task: remain consistent when using the task's handler by Willy Tarreau · 5 years ago
  27. 0c7a4b6 MINOR: tasks: Don't set the TASK_RUNNING flag when adding in the tasklet list. by Olivier Houchard · 5 years ago
  28. de82aea BUG/MEDIUM: tasks: Make sure we modify global_tasks_mask with the rq_lock. by Olivier Houchard · 5 years ago
  29. b038007 BUG/MEDIUM: tasks: Make sure we set TASK_QUEUED before adding a task to the rq. by Willy Tarreau · 5 years ago
  30. 3466e3c BUILD: task/thread: fix single-threaded build of task.c by Willy Tarreau · 5 years ago
  31. c8da044 MINOR: tasks: restore the lower latency scheduling when niced tasks are present by Willy Tarreau · 5 years ago
  32. 2d1fd0a MEDIUM: tasks: only base the nice offset on the run queue depth by Willy Tarreau · 5 years ago
  33. cde7902 MEDIUM: tasks: improve fairness between the local and global queues by Willy Tarreau · 5 years ago
  34. 24f382f CLEANUP: task: do not export rq_next anymore by Willy Tarreau · 5 years ago
  35. 587a813 BUG/MINOR: tasks: make sure the first task to be queued keeps its nice value by Willy Tarreau · 5 years ago
  36. f8bce31 BUG/MEDIUM: task/threads: address a fairness issue between local and global tasks by Willy Tarreau · 5 years ago
  37. e73256f BUG/MEDIUM: task/h2: add an idempotent task removal fucntion by Willy Tarreau · 5 years ago
  38. 1b32790 BUG/MEDIUM: tasks: Make sure we wake sleeping threads if needed. by Olivier Houchard · 5 years ago
  39. 4c283285 MEDIUM: task: Use the new _HA_ATOMIC_* macros. by Olivier Houchard · 5 years ago
  40. d2b5d16 MEDIUM: various: Use __ha_barrier_atomic* when relevant. by Olivier Houchard · 5 years ago
  41. 155acff BUG/MINOR: task: close a tiny race in the inter-thread wakeup by Willy Tarreau · 5 years ago
  42. 1ee55fd MEDIUM: tasks: check the global task mask instead of the thread number by Willy Tarreau · 6 years ago
  43. b582339 BUG/MEDIUM: mworker: fix several typos in mworker_cleantasks() by William Lallemand · 6 years ago
  44. 27f3fa5 BUG/MEDIUM: mworker: stop every tasks in the master by William Lallemand · 6 years ago
  45. b6b3df3 MEDIUM: initcall: use initcalls for a few initialization functions by Willy Tarreau · 6 years ago
  46. 8ceae72 MEDIUM: init: use initcall for all fixed size pool creations by Willy Tarreau · 6 years ago
  47. 86abe44 MEDIUM: init: use self-initializing spinlocks and rwlocks by Willy Tarreau · 6 years ago
  48. 9efd745 MEDIUM: tasks: collect per-task CPU time and latency by Willy Tarreau · 6 years ago
  49. cf92b6d CLEANUP: Fix typos in the task subsystem by Joseph Herlant · 6 years ago
  50. 8d8747a OPTIM: tasks: group all tree roots per cache line by Willy Tarreau · 6 years ago
  51. b20aa9e MAJOR: tasks: create per-thread wait queues by Willy Tarreau · 6 years ago
  52. 0b25d5e MEDIUM: task: perform a single tree lookup per run queue batch by Willy Tarreau · 6 years ago
  53. 19bdf24 MINOR: tasks: Don't special-case when nbthreads == 1 by Olivier Houchard · 6 years ago
  54. d8b7a47 BUG/MEDIUM: tasks: Don't insert in the global rqueue if nbthread == 1 by Olivier Houchard · 6 years ago
  55. 85d9b84 BUILD/MINOR: threads: unbreak build with threads disabled by Willy Tarreau · 6 years ago
  56. 79321b9 MINOR: pollers: Add a way to wake a thread sleeping in the poller. by Olivier Houchard · 6 years ago
  57. eba0c0b MINOR: tasks: Make global_tasks_mask volatile. by Olivier Houchard · 6 years ago
  58. 9b03c0c MINOR: tasks: Make active_tasks_mask volatile. by Olivier Houchard · 6 years ago
  59. 77551ee BUG/MEDIUM: tasks: make __task_unlink_rq responsible for the rqueue size. by Olivier Houchard · 6 years ago
  60. 76e4518 MINOR: tasks: Add a flag that tells if we're in the global runqueue. by Olivier Houchard · 6 years ago
  61. c4aac9e BUG/MEDIUM: tasks: Make sure there's no task left before considering inactive. by Olivier Houchard · 6 years ago
  62. 189ea85 BUG/MEDIUM: tasks: use atomic ops for active_tasks_mask by Willy Tarreau · 6 years ago
  63. e85ee7b BUG/MEDIUM: tasks: Decrement rqueue_size at the right time. by Olivier Houchard · 6 years ago
  64. 9a77186 BUG/MEDIUM: tasks: make sure we pick all tasks in the run queue by Willy Tarreau · 6 years ago
  65. 9db0fed BUG/MINOR: tasklets: Just make sure we don't pass a tasklet to the handler. by Olivier Houchard · 6 years ago
  66. b1ca58b MINOR: tasks: Don't define rqueue if we're building without threads. by Olivier Houchard · 6 years ago
  67. cc0a957 MINOR: task: Fix compiler warning. by David Carlier · 6 years ago
  68. 082627a MINOR: task: Also consider the task list size when getting global tasks. by Olivier Houchard · 6 years ago
  69. 736ea41 BUG/MEDIUM: task: Don't forget to decrement max_processed after each task. by Olivier Houchard · 6 years ago
  70. 1599b80 MINOR: tasks: Make the number of tasks to run at once configurable. by Olivier Houchard · 6 years ago
  71. b0bdae7 MAJOR: tasks: Introduce tasklets. by Olivier Houchard · 6 years ago
  72. f6e6dc1 MAJOR: tasks: Create a per-thread runqueue. by Olivier Houchard · 6 years ago
  73. 9f6af33 MINOR: tasks: Change the task API so that the callback takes 3 arguments. by Olivier Houchard · 6 years ago
  74. 9b36cb4 BUG/MEDIUM: task: Don't free a task that is about to be run. by Olivier Houchard · 6 years ago
  75. d80cb4e MINOR: global: add some global activity counters to help debugging by Willy Tarreau · 6 years ago
  76. a24d1d0 MINOR: task: align the rq and wq locks by Willy Tarreau · 7 years ago
  77. 6d1222c MINOR: task: keep a pointer to the currently running task by Willy Tarreau · 7 years ago
  78. bafbe01 CLEANUP: pools: rename all pool functions and pointers to remove this "2" by Willy Tarreau · 7 years ago
  79. 5175345 BUG/MAJOR: threads/task: dequeue expired tasks under the WQ lock by Willy Tarreau · 7 years ago
  80. 8a48f67 MAJOR: polling: Use active_tasks_mask instead of tasks_run_queue by Christopher Faulet · 7 years ago
  81. 3911ee8 MINOR: tasks: Use a bitfield to track tasks activity per-thread by Christopher Faulet · 7 years ago
  82. 919b739 CLEANUP: tasks: Remove useless double test on rq_next by Christopher Faulet · 7 years ago
  83. 9dcf9b6 MINOR: threads: Use __decl_hathreads to declare locks by Christopher Faulet · 7 years ago
  84. 9e45b33 BUG/MAJOR: threads/tasks: fix the scheduler again by Willy Tarreau · 7 years ago
  85. 2a944ee BUILD: threads: Rename SPIN/RWLOCK macros using HA_ prefix by Christopher Faulet · 7 years ago
  86. f0c531a MEDIUM: tasks: implement a lockless scheduler for single-thread usage by Willy Tarreau · 7 years ago
  87. 9d4b56b MINOR: tasks: only visit filled task slots after processing them by Willy Tarreau · 7 years ago
  88. ce4e0aa MEDIUM: task: change the construction of the loop in process_runnable_tasks() by Willy Tarreau · 7 years ago
  89. b992ba1 MINOR: task: simplify wake_expired_tasks() to avoid unlocking in the loop by Willy Tarreau · 7 years ago
  90. 8d38805 MAJOR: task: make use of the scope-aware ebtree functions by Willy Tarreau · 7 years ago
  91. f65610a CLEANUP: threads: rename process_mask to thread_mask by Willy Tarreau · 7 years ago
  92. 5f4a47b CLEANUP: threads: replace the last few 1UL<<tid with tid_bit by Willy Tarreau · 7 years ago
  93. c60def8 MAJOR: threads/task: handle multithread on task scheduler by Emeric Brun · 7 years ago
  94. d697596 MINOR: tasks: Move Lua notification from Lua to tasks by Thierry FOURNIER · 7 years ago
  95. 0194897 MAJOR: task: task scheduler rework. by Emeric Brun · 7 years ago
  96. 34c5cc9 MINOR: task: Rename run_queue and run_queue_cur counters by Christopher Faulet · 8 years ago
  97. 87b0966 REORG/MAJOR: session: rename the "session" entity to "stream" by Willy Tarreau · 9 years ago
  98. c46c965 BUG/MEDIUM: task: fix recently introduced scheduler skew by Willy Tarreau · 9 years ago
  99. 9cf7c4b MAJOR: poll: only rely on wake_expired_tasks() to compute the wait delay by Thierry FOURNIER · 10 years ago
  100. 501260b MEDIUM: task: always ensure that the run queue is consistent by Willy Tarreau · 9 years ago