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