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