Home
last modified time | relevance | path

Searched refs:worker (Results 1 - 25 of 174) sorted by relevance

1234567

/kernel/linux/linux-5.10/io_uring/
H A Dio-wq.c3 * Basic worker thread pool for io_uring
26 IO_WORKER_F_FREE = 4, /* worker on free list */
88 * Per-node worker thread pool
139 static void io_wqe_dec_running(struct io_worker *worker);
146 static bool io_worker_get(struct io_worker *worker) in io_worker_get() argument
148 return refcount_inc_not_zero(&worker->ref); in io_worker_get()
151 static void io_worker_release(struct io_worker *worker) in io_worker_release() argument
153 if (refcount_dec_and_test(&worker->ref)) in io_worker_release()
154 complete(&worker->ref_done); in io_worker_release()
168 static inline struct io_wqe_acct *io_wqe_get_acct(struct io_worker *worker) in io_wqe_get_acct() argument
181 struct io_worker *worker = current->pf_io_worker; io_wq_worker_stopped() local
189 io_worker_cancel_cb(struct io_worker *worker) io_worker_cancel_cb() argument
206 struct io_worker *worker; io_task_worker_match() local
214 io_worker_exit(struct io_worker *worker) io_worker_exit() argument
265 struct io_worker *worker; __must_hold() local
314 io_wqe_inc_running(struct io_worker *worker) io_wqe_inc_running() argument
323 struct io_worker *worker; create_worker_cb() local
349 io_queue_worker_create(struct io_worker *worker, struct io_wqe_acct *acct, task_work_func_t func) io_queue_worker_create() argument
534 io_assign_current_work(struct io_worker *worker, struct io_wq_work *work) io_assign_current_work() argument
621 struct io_worker *worker = data; io_wqe_worker() local
680 struct io_worker *worker = tsk->pf_io_worker; io_wq_worker_running() local
698 struct io_worker *worker = tsk->pf_io_worker; io_wq_worker_sleeping() local
714 io_init_new_worker(struct io_wqe *wqe, struct io_worker *worker, struct task_struct *tsk) io_init_new_worker() argument
757 struct io_worker *worker; create_worker_cont() local
797 struct io_worker *worker = container_of(work, struct io_worker, work); io_workqueue_create() local
807 struct io_worker *worker; create_io_worker() local
853 struct io_worker *worker; io_wq_for_each_worker() local
870 io_wq_worker_wake(struct io_worker *worker, void *data) io_wq_worker_wake() argument
983 io_wq_worker_cancel(struct io_worker *worker, void *data) io_wq_worker_cancel() argument
1208 struct io_worker *worker; io_task_work_match() local
1226 struct io_worker *worker; io_wq_cancel_tw_create() local
1300 io_wq_worker_affinity(struct io_worker *worker, void *data) io_wq_worker_affinity() argument
[all...]
/kernel/linux/linux-6.6/io_uring/
H A Dio-wq.c3 * Basic worker thread pool for io_uring
30 IO_WORKER_F_FREE = 4, /* worker on free list */
137 static void io_wq_dec_running(struct io_worker *worker);
144 static bool io_worker_get(struct io_worker *worker) in io_worker_get() argument
146 return refcount_inc_not_zero(&worker->ref); in io_worker_get()
149 static void io_worker_release(struct io_worker *worker) in io_worker_release() argument
151 if (refcount_dec_and_test(&worker->ref)) in io_worker_release()
152 complete(&worker->ref_done); in io_worker_release()
166 static inline struct io_wq_acct *io_wq_get_acct(struct io_worker *worker) in io_wq_get_acct() argument
168 return io_get_acct(worker in io_wq_get_acct()
179 struct io_worker *worker = current->worker_private; io_wq_worker_stopped() local
187 io_worker_cancel_cb(struct io_worker *worker) io_worker_cancel_cb() argument
203 struct io_worker *worker; io_task_worker_match() local
211 io_worker_exit(struct io_worker *worker) io_worker_exit() argument
275 struct io_worker *worker; __must_hold() local
327 io_wq_inc_running(struct io_worker *worker) io_wq_inc_running() argument
336 struct io_worker *worker; create_worker_cb() local
362 io_queue_worker_create(struct io_worker *worker, struct io_wq_acct *acct, task_work_func_t func) io_queue_worker_create() argument
408 io_wq_dec_running(struct io_worker *worker) io_wq_dec_running() argument
431 __io_worker_busy(struct io_wq *wq, struct io_worker *worker) __io_worker_busy() argument
532 io_assign_current_work(struct io_worker *worker, struct io_wq_work *work) io_assign_current_work() argument
628 struct io_worker *worker = data; io_wq_worker() local
694 struct io_worker *worker = tsk->worker_private; io_wq_worker_running() local
712 struct io_worker *worker = tsk->worker_private; io_wq_worker_sleeping() local
725 io_init_new_worker(struct io_wq *wq, struct io_worker *worker, struct task_struct *tsk) io_init_new_worker() argument
767 struct io_worker *worker; create_worker_cont() local
809 struct io_worker *worker = container_of(work, struct io_worker, work); io_workqueue_create() local
819 struct io_worker *worker; create_io_worker() local
865 struct io_worker *worker; io_wq_for_each_worker() local
882 io_wq_worker_wake(struct io_worker *worker, void *data) io_wq_worker_wake() argument
986 __io_wq_worker_cancel(struct io_worker *worker, struct io_cb_cancel_data *match, struct io_wq_work *work) __io_wq_worker_cancel() argument
999 io_wq_worker_cancel(struct io_worker *worker, void *data) io_wq_worker_cancel() argument
1200 struct io_worker *worker; io_task_work_match() local
1218 struct io_worker *worker; io_wq_cancel_tw_create() local
1279 io_wq_worker_affinity(struct io_worker *worker, void *data) io_wq_worker_affinity() argument
[all...]
/kernel/linux/linux-6.6/kernel/
H A Dkthread.c756 void __kthread_init_worker(struct kthread_worker *worker, in __kthread_init_worker() argument
760 memset(worker, 0, sizeof(struct kthread_worker)); in __kthread_init_worker()
761 raw_spin_lock_init(&worker->lock); in __kthread_init_worker()
762 lockdep_set_class_and_name(&worker->lock, key, name); in __kthread_init_worker()
763 INIT_LIST_HEAD(&worker->work_list); in __kthread_init_worker()
764 INIT_LIST_HEAD(&worker->delayed_work_list); in __kthread_init_worker()
772 * This function implements the main cycle of kthread worker. It processes
780 * Also the works must not be handled by more than one worker at the same time,
785 struct kthread_worker *worker = worker_ptr; in kthread_worker_fn() local
790 * worker user in kthread_worker_fn()
842 struct kthread_worker *worker; __kthread_create_worker() local
885 struct kthread_worker *worker; kthread_create_worker() local
935 struct kthread_worker *worker; kthread_create_worker_on_cpu() local
951 queuing_blocked(struct kthread_worker *worker, struct kthread_work *work) queuing_blocked() argument
959 kthread_insert_work_sanity_check(struct kthread_worker *worker, struct kthread_work *work) kthread_insert_work_sanity_check() argument
969 kthread_insert_work(struct kthread_worker *worker, struct kthread_work *work, struct list_head *pos) kthread_insert_work() argument
995 kthread_queue_work(struct kthread_worker *worker, struct kthread_work *work) kthread_queue_work() argument
1023 struct kthread_worker *worker = work->worker; kthread_delayed_work_timer_fn() local
1047 __kthread_queue_delayed_work(struct kthread_worker *worker, struct kthread_delayed_work *dwork, unsigned long delay) __kthread_queue_delayed_work() argument
1091 kthread_queue_delayed_work(struct kthread_worker *worker, struct kthread_delayed_work *dwork, unsigned long delay) kthread_queue_delayed_work() argument
1135 struct kthread_worker *worker; kthread_flush_work() local
1173 struct kthread_worker *worker = work->worker; kthread_cancel_delayed_work_timer() local
1238 kthread_mod_delayed_work(struct kthread_worker *worker, struct kthread_delayed_work *dwork, unsigned long delay) kthread_mod_delayed_work() argument
1287 struct kthread_worker *worker = work->worker; __kthread_cancel_work_sync() local
1366 kthread_flush_worker(struct kthread_worker *worker) kthread_flush_worker() argument
1390 kthread_destroy_worker(struct kthread_worker *worker) kthread_destroy_worker() argument
[all...]
H A Dworkqueue.c3 * kernel/workqueue.c - generic async execution with shared worker pool
19 * executed in process context. The worker pool is shared and
20 * automatically managed. There are two worker pools for each CPU (one for
79 /* worker flags */
84 WORKER_UNBOUND = 1 << 7, /* worker is unbound */
85 WORKER_REBOUND = 1 << 8, /* worker was rebound */
128 * K: Only modified by worker while holding pool->lock. Can be safely read by
132 * S: Only modified by worker self.
157 /* struct worker is defined in workqueue_internal.h */
183 struct timer_list idle_timer; /* L: worker idl
929 worker_set_flags(struct worker *worker, unsigned int flags) worker_set_flags() argument
951 worker_clr_flags(struct worker *worker, unsigned int flags) worker_clr_flags() argument
989 worker_enter_idle(struct worker *worker) worker_enter_idle() argument
1022 worker_leave_idle(struct worker *worker) worker_leave_idle() argument
1069 struct worker *worker; find_worker_executing_work() local
1134 assign_work(struct work_struct *work, struct worker *worker, struct work_struct **nextp) assign_work() argument
1169 struct worker *worker = first_idle_worker(pool); kick_pool() local
1308 struct worker *worker = kthread_data(task); wq_worker_running() local
1342 struct worker *worker = kthread_data(task); wq_worker_sleeping() local
1388 struct worker *worker = kthread_data(task); wq_worker_tick() local
1455 struct worker *worker = kthread_data(task); wq_worker_last_func() local
2050 struct worker *worker; is_chained_work() local
2133 struct worker *worker; __queue_work() local
2459 struct worker *worker; alloc_worker() local
2489 worker_attach_to_pool(struct worker *worker, struct worker_pool *pool) worker_attach_to_pool() argument
2521 worker_detach_from_pool(struct worker *worker) worker_detach_from_pool() argument
2557 struct worker *worker; create_worker() local
2626 unbind_worker(struct worker *worker) unbind_worker() argument
2639 struct worker *worker, *tmp; wake_dying_workers() local
2669 set_worker_dying(struct worker *worker, struct list_head *list) set_worker_dying() argument
2712 struct worker *worker; idle_worker_timeout() local
2755 struct worker *worker; idle_cull_fn() local
2894 manage_workers(struct worker *worker) manage_workers() argument
3082 process_scheduled_works(struct worker *worker) process_scheduled_works() argument
3121 struct worker *worker = __worker; worker_thread() local
3343 struct worker *worker; check_flush_dependency() local
3396 insert_wq_barrier(struct pool_workqueue *pwq, struct wq_barrier *barr, struct work_struct *target, struct worker *worker) insert_wq_barrier() argument
3730 struct worker *worker = NULL; start_flush_work() local
4405 struct worker *worker; put_unbound_pool() local
5402 struct worker *worker = current_wq_worker(); current_work() local
5418 struct worker *worker = current_wq_worker(); current_is_workqueue_rescuer() local
5509 struct worker *worker = current_wq_worker(); set_worker_desc() local
5540 struct worker *worker; print_worker_info() local
5626 struct worker *worker; show_pwq() local
5747 struct worker *worker; show_one_worker_pool() local
5851 struct worker *worker = kthread_data(task); wq_worker_comm() local
5896 struct worker *worker; unbind_workers() local
5949 struct worker *worker; rebind_workers() local
6010 struct worker *worker; restore_unbound_workers_cpumask() local
6833 struct worker *worker; show_cpu_pool_hog() local
[all...]
/kernel/linux/linux-5.10/kernel/
H A Dkthread.c689 void __kthread_init_worker(struct kthread_worker *worker, in __kthread_init_worker() argument
693 memset(worker, 0, sizeof(struct kthread_worker)); in __kthread_init_worker()
694 raw_spin_lock_init(&worker->lock); in __kthread_init_worker()
695 lockdep_set_class_and_name(&worker->lock, key, name); in __kthread_init_worker()
696 INIT_LIST_HEAD(&worker->work_list); in __kthread_init_worker()
697 INIT_LIST_HEAD(&worker->delayed_work_list); in __kthread_init_worker()
705 * This function implements the main cycle of kthread worker. It processes
713 * Also the works must not be handled by more than one worker at the same time,
718 struct kthread_worker *worker = worker_ptr; in kthread_worker_fn() local
723 * worker user in kthread_worker_fn()
768 struct kthread_worker *worker; __kthread_create_worker() local
811 struct kthread_worker *worker; kthread_create_worker() local
843 struct kthread_worker *worker; kthread_create_worker_on_cpu() local
859 queuing_blocked(struct kthread_worker *worker, struct kthread_work *work) queuing_blocked() argument
867 kthread_insert_work_sanity_check(struct kthread_worker *worker, struct kthread_work *work) kthread_insert_work_sanity_check() argument
877 kthread_insert_work(struct kthread_worker *worker, struct kthread_work *work, struct list_head *pos) kthread_insert_work() argument
901 kthread_queue_work(struct kthread_worker *worker, struct kthread_work *work) kthread_queue_work() argument
929 struct kthread_worker *worker = work->worker; kthread_delayed_work_timer_fn() local
953 __kthread_queue_delayed_work(struct kthread_worker *worker, struct kthread_delayed_work *dwork, unsigned long delay) __kthread_queue_delayed_work() argument
998 kthread_queue_delayed_work(struct kthread_worker *worker, struct kthread_delayed_work *dwork, unsigned long delay) kthread_queue_delayed_work() argument
1042 struct kthread_worker *worker; kthread_flush_work() local
1080 struct kthread_worker *worker = work->worker; kthread_cancel_delayed_work_timer() local
1145 kthread_mod_delayed_work(struct kthread_worker *worker, struct kthread_delayed_work *dwork, unsigned long delay) kthread_mod_delayed_work() argument
1194 struct kthread_worker *worker = work->worker; __kthread_cancel_work_sync() local
1273 kthread_flush_worker(struct kthread_worker *worker) kthread_flush_worker() argument
1293 kthread_destroy_worker(struct kthread_worker *worker) kthread_destroy_worker() argument
[all...]
H A Dworkqueue.c3 * kernel/workqueue.c - generic async execution with shared worker pool
19 * executed in process context. The worker pool is shared and
20 * automatically managed. There are two worker pools for each CPU (one for
77 /* worker flags */
82 WORKER_UNBOUND = 1 << 7, /* worker is unbound */
83 WORKER_REBOUND = 1 << 8, /* worker was rebound */
146 /* struct worker is defined in workqueue_internal.h */
163 struct timer_list idle_timer; /* L: worker idle timeout */
170 struct worker *manager; /* L: purely informational */
174 struct ida worker_ida; /* worker ID
838 struct worker *worker = first_idle_worker(pool); wake_up_worker() local
852 struct worker *worker = kthread_data(task); wq_worker_running() local
880 struct worker *next, *worker = kthread_data(task); wq_worker_sleeping() local
946 struct worker *worker = kthread_data(task); wq_worker_last_func() local
961 worker_set_flags(struct worker *worker, unsigned int flags) worker_set_flags() argument
986 worker_clr_flags(struct worker *worker, unsigned int flags) worker_clr_flags() argument
1041 struct worker *worker; find_worker_executing_work() local
1365 struct worker *worker; is_chained_work() local
1450 struct worker *worker; __queue_work() local
1781 worker_enter_idle(struct worker *worker) worker_enter_idle() argument
1821 worker_leave_idle(struct worker *worker) worker_leave_idle() argument
1834 struct worker *worker; alloc_worker() local
1856 worker_attach_to_pool(struct worker *worker, struct worker_pool *pool) worker_attach_to_pool() argument
1886 worker_detach_from_pool(struct worker *worker) worker_detach_from_pool() argument
1921 struct worker *worker = NULL; create_worker() local
1979 destroy_worker(struct worker *worker) destroy_worker() argument
2006 struct worker *worker; idle_worker_timeout() local
2143 manage_workers(struct worker *worker) manage_workers() argument
2339 process_scheduled_works(struct worker *worker) process_scheduled_works() argument
2372 struct worker *worker = __worker; worker_thread() local
2610 struct worker *worker; check_flush_dependency() local
2663 insert_wq_barrier(struct pool_workqueue *pwq, struct wq_barrier *barr, struct work_struct *target, struct worker *worker) insert_wq_barrier() argument
2990 struct worker *worker = NULL; start_flush_work() local
3553 struct worker *worker; put_unbound_pool() local
4519 struct worker *worker = current_wq_worker(); current_work() local
4535 struct worker *worker = current_wq_worker(); current_is_workqueue_rescuer() local
4628 struct worker *worker = current_wq_worker(); set_worker_desc() local
4659 struct worker *worker; print_worker_info() local
4714 struct worker *worker; show_pwq() local
4829 struct worker *worker; show_workqueue_state() local
4880 struct worker *worker = kthread_data(task); wq_worker_comm() local
4925 struct worker *worker; unbind_workers() local
4983 struct worker *worker; rebind_workers() local
5053 struct worker *worker; restore_unbound_workers_cpumask() local
[all...]
/kernel/linux/linux-5.10/include/linux/
H A Dkthread.h104 struct kthread_worker *worker; member
114 #define KTHREAD_WORKER_INIT(worker) { \
115 .lock = __RAW_SPIN_LOCK_UNLOCKED((worker).lock), \
116 .work_list = LIST_HEAD_INIT((worker).work_list), \
117 .delayed_work_list = LIST_HEAD_INIT((worker).delayed_work_list),\
131 #define DEFINE_KTHREAD_WORKER(worker) \
132 struct kthread_worker worker = KTHREAD_WORKER_INIT(worker)
146 # define KTHREAD_WORKER_INIT_ONSTACK(worker) \
147 ({ kthread_init_worker(&worker); worke
[all...]
/kernel/linux/linux-5.10/tools/perf/bench/
H A Dfutex-hash.c46 struct worker { struct
70 struct worker *w = (struct worker *) arg; in workerfn()
127 struct worker *worker = NULL; in bench_futex_hash() local
148 worker = calloc(nthreads, sizeof(*worker)); in bench_futex_hash()
149 if (!worker) in bench_futex_hash()
167 worker[i].tid = i; in bench_futex_hash()
168 worker[ in bench_futex_hash()
[all...]
H A Dfutex-lock-pi.c26 struct worker { struct
34 static struct worker *worker; variable
81 struct worker *w = (struct worker *) arg; in workerfn()
118 static void create_threads(struct worker *w, pthread_attr_t thread_attr, in create_threads()
127 worker[i].tid = i; in create_threads()
130 worker[i].futex = calloc(1, sizeof(u_int32_t)); in create_threads()
131 if (!worker[i].futex) in create_threads()
134 worker[ in create_threads()
[all...]
H A Depoll-wait.c9 * epoll instance for N worker threads):
11 * |---> [worker A]
12 * |---> [worker B]
13 * [combined queue] .---> [worker C]
14 * |---> [worker D]
15 * |---> [worker E]
18 * queueing (which refers to one epoll instance per worker). For example,
21 * worker does a limited amount of processing.
23 * [queue A] ---> [worker]
24 * [queue B] ---> [worker]
118 struct worker { global() struct
292 do_threads(struct worker *worker, struct perf_cpu_map *cpu) do_threads() argument
369 struct worker *worker = p; writerfn() local
418 struct worker *worker = NULL; bench_epoll_wait() local
[all...]
H A Depoll-ctl.c67 struct worker { struct
132 static inline void do_epoll_op(struct worker *w, int op, int fd) in do_epoll_op()
160 static inline void do_random_epoll_op(struct worker *w) in do_random_epoll_op()
174 struct worker *w = (struct worker *) arg; in workerfn()
204 static void init_fdmaps(struct worker *w, int pct) in init_fdmaps()
223 static int do_threads(struct worker *worker, struct perf_cpu_map *cpu) in do_threads() argument
234 struct worker *w = &worker[ in do_threads()
304 struct worker *worker = NULL; bench_epoll_ctl() local
[all...]
H A Dfutex-requeue.c40 static pthread_t *worker; variable
139 worker = calloc(nthreads, sizeof(*worker)); in bench_futex_requeue()
140 if (!worker) in bench_futex_requeue()
165 block_threads(worker, thread_attr, cpu); in bench_futex_requeue()
204 ret = pthread_join(worker[i], NULL); in bench_futex_requeue()
218 free(worker); in bench_futex_requeue()
H A Dfutex-wake.c41 pthread_t *worker; variable
147 worker = calloc(nthreads, sizeof(*worker)); in bench_futex_wake()
148 if (!worker) in bench_futex_wake()
170 block_threads(worker, thread_attr, cpu); in bench_futex_wake()
197 ret = pthread_join(worker[i], NULL); in bench_futex_wake()
212 free(worker); in bench_futex_wake()
/kernel/linux/linux-6.6/tools/perf/bench/
H A Dfutex-hash.c43 struct worker { struct
73 struct worker *w = (struct worker *) arg; in workerfn()
130 struct worker *worker = NULL; in bench_futex_hash() local
158 worker = calloc(params.nthreads, sizeof(*worker)); in bench_futex_hash()
159 if (!worker) in bench_futex_hash()
183 worker[i].tid = i; in bench_futex_hash()
184 worker[ in bench_futex_hash()
[all...]
H A Dfutex-lock-pi.c27 struct worker { struct
35 static struct worker *worker; variable
84 struct worker *w = (struct worker *) arg; in workerfn()
121 static void create_threads(struct worker *w, struct perf_cpu_map *cpu) in create_threads()
138 worker[i].tid = i; in create_threads()
141 worker[i].futex = calloc(1, sizeof(u_int32_t)); in create_threads()
142 if (!worker[i].futex) in create_threads()
145 worker[ in create_threads()
[all...]
H A Depoll-wait.c9 * epoll instance for N worker threads):
11 * |---> [worker A]
12 * |---> [worker B]
13 * [combined queue] .---> [worker C]
14 * |---> [worker D]
15 * |---> [worker E]
18 * queueing (which refers to one epoll instance per worker). For example,
21 * worker does a limited amount of processing.
23 * [queue A] ---> [worker]
24 * [queue B] ---> [worker]
118 struct worker { global() struct
292 do_threads(struct worker *worker, struct perf_cpu_map *cpu) do_threads() argument
382 struct worker *worker = p; writerfn() local
431 struct worker *worker = NULL; bench_epoll_wait() local
[all...]
H A Depoll-ctl.c67 struct worker { struct
132 static inline void do_epoll_op(struct worker *w, int op, int fd) in do_epoll_op()
160 static inline void do_random_epoll_op(struct worker *w) in do_random_epoll_op()
174 struct worker *w = (struct worker *) arg; in workerfn()
204 static void init_fdmaps(struct worker *w, int pct) in init_fdmaps()
223 static int do_threads(struct worker *worker, struct perf_cpu_map *cpu) in do_threads() argument
241 struct worker *w = &worker[ in do_threads()
317 struct worker *worker = NULL; bench_epoll_ctl() local
[all...]
/kernel/linux/linux-6.6/include/linux/
H A Dkthread.h134 struct kthread_worker *worker; member
162 extern void __kthread_init_worker(struct kthread_worker *worker,
165 #define kthread_init_worker(worker) \
168 __kthread_init_worker((worker), "("#worker")->lock", &__key); \
196 bool kthread_queue_work(struct kthread_worker *worker,
199 bool kthread_queue_delayed_work(struct kthread_worker *worker,
203 bool kthread_mod_delayed_work(struct kthread_worker *worker,
208 void kthread_flush_worker(struct kthread_worker *worker);
213 void kthread_destroy_worker(struct kthread_worker *worker);
[all...]
H A Ddevm-helpers.h38 * @worker: Worker function
48 work_func_t worker) in devm_delayed_work_autocancel()
50 INIT_DELAYED_WORK(w, worker); in devm_delayed_work_autocancel()
63 * @worker: Worker function
73 work_func_t worker) in devm_work_autocancel()
75 INIT_WORK(w, worker); in devm_work_autocancel()
46 devm_delayed_work_autocancel(struct device *dev, struct delayed_work *w, work_func_t worker) devm_delayed_work_autocancel() argument
71 devm_work_autocancel(struct device *dev, struct work_struct *w, work_func_t worker) devm_work_autocancel() argument
/kernel/linux/linux-5.10/drivers/net/wireguard/
H A Dqueueing.c13 struct multicore_worker __percpu *worker = alloc_percpu(struct multicore_worker); in wg_packet_percpu_multicore_worker_alloc() local
15 if (!worker) in wg_packet_percpu_multicore_worker_alloc()
19 per_cpu_ptr(worker, cpu)->ptr = ptr; in wg_packet_percpu_multicore_worker_alloc()
20 INIT_WORK(&per_cpu_ptr(worker, cpu)->work, function); in wg_packet_percpu_multicore_worker_alloc()
22 return worker; in wg_packet_percpu_multicore_worker_alloc()
35 queue->worker = wg_packet_percpu_multicore_worker_alloc(function, queue); in wg_packet_queue_init()
36 if (!queue->worker) { in wg_packet_queue_init()
45 free_percpu(queue->worker); in wg_packet_queue_free()
/kernel/linux/linux-6.6/drivers/net/wireguard/
H A Dqueueing.c13 struct multicore_worker __percpu *worker = alloc_percpu(struct multicore_worker); in wg_packet_percpu_multicore_worker_alloc() local
15 if (!worker) in wg_packet_percpu_multicore_worker_alloc()
19 per_cpu_ptr(worker, cpu)->ptr = ptr; in wg_packet_percpu_multicore_worker_alloc()
20 INIT_WORK(&per_cpu_ptr(worker, cpu)->work, function); in wg_packet_percpu_multicore_worker_alloc()
22 return worker; in wg_packet_percpu_multicore_worker_alloc()
35 queue->worker = wg_packet_percpu_multicore_worker_alloc(function, queue); in wg_packet_queue_init()
36 if (!queue->worker) { in wg_packet_queue_init()
45 free_percpu(queue->worker); in wg_packet_queue_free()
/kernel/linux/linux-5.10/drivers/gpu/drm/
H A Ddrm_vblank_work.c60 kthread_queue_work(vblank->worker, &work->base); in drm_handle_vblank_works()
147 ret = kthread_queue_work(vblank->worker, &work->base); in drm_vblank_work_schedule()
251 struct kthread_worker *worker; in drm_vblank_worker_init() local
255 worker = kthread_create_worker(0, "card%d-crtc%d", in drm_vblank_worker_init()
258 if (IS_ERR(worker)) in drm_vblank_worker_init()
259 return PTR_ERR(worker); in drm_vblank_worker_init()
261 vblank->worker = worker; in drm_vblank_worker_init()
263 sched_set_fifo(worker->task); in drm_vblank_worker_init()
/kernel/linux/linux-6.6/drivers/gpu/drm/
H A Ddrm_vblank_work.c60 kthread_queue_work(vblank->worker, &work->base); in drm_handle_vblank_works()
147 ret = kthread_queue_work(vblank->worker, &work->base); in drm_vblank_work_schedule()
251 struct kthread_worker *worker; in drm_vblank_worker_init() local
255 worker = kthread_create_worker(0, "card%d-crtc%d", in drm_vblank_worker_init()
258 if (IS_ERR(worker)) in drm_vblank_worker_init()
259 return PTR_ERR(worker); in drm_vblank_worker_init()
261 vblank->worker = worker; in drm_vblank_worker_init()
263 sched_set_fifo(worker->task); in drm_vblank_worker_init()
/kernel/linux/linux-6.6/drivers/vhost/
H A Dvhost.c236 static void vhost_worker_queue(struct vhost_worker *worker, in vhost_worker_queue() argument
244 llist_add(&work->node, &worker->work_list); in vhost_worker_queue()
245 vhost_task_wake(worker->vtsk); in vhost_worker_queue()
251 struct vhost_worker *worker; in vhost_vq_work_queue() local
255 worker = rcu_dereference(vq->worker); in vhost_vq_work_queue()
256 if (worker) { in vhost_vq_work_queue()
258 vhost_worker_queue(worker, work); in vhost_vq_work_queue()
279 * vhost_worker_flush - flush a worker
280 * @worker
285 vhost_worker_flush(struct vhost_worker *worker) vhost_worker_flush() argument
298 struct vhost_worker *worker; vhost_dev_flush() local
316 struct vhost_worker *worker; vhost_vq_has_work() local
397 struct vhost_worker *worker = data; vhost_worker() local
591 vhost_worker_destroy(struct vhost_dev *dev, struct vhost_worker *worker) vhost_worker_destroy() argument
605 struct vhost_worker *worker; vhost_workers_free() local
624 struct vhost_worker *worker; vhost_worker_create() local
662 __vhost_vq_attach_worker(struct vhost_virtqueue *vq, struct vhost_worker *worker) __vhost_vq_attach_worker() argument
718 struct vhost_worker *worker; vhost_vq_attach_worker() local
735 struct vhost_worker *worker; vhost_new_worker() local
750 struct vhost_worker *worker; vhost_free_worker() local
794 struct vhost_worker *worker; vhost_worker_ioctl() local
867 struct vhost_worker *worker; vhost_dev_set_owner() local
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/msm/
H A Dmsm_atomic.c118 timer->worker = kthread_create_worker(0, "atomic-worker-%d", crtc_idx); in msm_atomic_init_pending_timer()
119 if (IS_ERR(timer->worker)) { in msm_atomic_init_pending_timer()
120 int ret = PTR_ERR(timer->worker); in msm_atomic_init_pending_timer()
121 timer->worker = NULL; in msm_atomic_init_pending_timer()
124 sched_set_fifo(timer->worker->task); in msm_atomic_init_pending_timer()
126 msm_hrtimer_work_init(&timer->work, timer->worker, in msm_atomic_init_pending_timer()
135 if (timer->worker) in msm_atomic_destroy_pending_timer()
136 kthread_destroy_worker(timer->worker); in msm_atomic_destroy_pending_timer()

Completed in 31 milliseconds

1234567