/openbmc/linux/io_uring/ |
H A D | io-wq.c | 140 static void io_wq_dec_running(struct io_worker *worker); 147 static bool io_worker_get(struct io_worker *worker) in io_worker_get() argument 149 return refcount_inc_not_zero(&worker->ref); in io_worker_get() 152 static void io_worker_release(struct io_worker *worker) in io_worker_release() argument 154 if (refcount_dec_and_test(&worker->ref)) in io_worker_release() 155 complete(&worker->ref_done); in io_worker_release() 169 static inline struct io_wq_acct *io_wq_get_acct(struct io_worker *worker) in io_wq_get_acct() argument 171 return io_get_acct(worker->wq, test_bit(IO_WORKER_F_BOUND, &worker->flags)); in io_wq_get_acct() 182 struct io_worker *worker = current->worker_private; in io_wq_worker_stopped() local 187 return test_bit(IO_WQ_BIT_EXIT, &worker->wq->state); in io_wq_worker_stopped() [all …]
|
/openbmc/linux/kernel/ |
H A D | kthread.c | 776 void __kthread_init_worker(struct kthread_worker *worker, in __kthread_init_worker() argument 780 memset(worker, 0, sizeof(struct kthread_worker)); in __kthread_init_worker() 781 raw_spin_lock_init(&worker->lock); in __kthread_init_worker() 782 lockdep_set_class_and_name(&worker->lock, key, name); in __kthread_init_worker() 783 INIT_LIST_HEAD(&worker->work_list); in __kthread_init_worker() 784 INIT_LIST_HEAD(&worker->delayed_work_list); in __kthread_init_worker() 805 struct kthread_worker *worker = worker_ptr; in kthread_worker_fn() local 812 WARN_ON(worker->task && worker->task != current); in kthread_worker_fn() 813 worker->task = current; in kthread_worker_fn() 815 if (worker->flags & KTW_FREEZABLE) in kthread_worker_fn() [all …]
|
H A D | workqueue.c | 186 struct worker *manager; /* L: purely informational */ 298 struct worker *rescuer; /* MD: rescue worker */ 489 #define for_each_pool_worker(worker, pool) \ argument 490 list_for_each_entry((worker), &(pool)->workers, node) \ 867 static inline void worker_set_flags(struct worker *worker, unsigned int flags) in worker_set_flags() argument 869 struct worker_pool *pool = worker->pool; in worker_set_flags() 875 !(worker->flags & WORKER_NOT_RUNNING)) { in worker_set_flags() 879 worker->flags |= flags; in worker_set_flags() 889 static inline void worker_clr_flags(struct worker *worker, unsigned int flags) in worker_clr_flags() argument 891 struct worker_pool *pool = worker->pool; in worker_clr_flags() [all …]
|
/openbmc/linux/tools/perf/bench/ |
H A D | futex-hash.c | 43 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[i].futex = calloc(params.nfutexes, sizeof(*worker[i].futex)); in bench_futex_hash() 185 if (!worker[i].futex) in bench_futex_hash() 196 ret = pthread_create(&worker[i].thread, &thread_attr, workerfn, in bench_futex_hash() 197 (void *)(struct worker *) &worker[i]); in bench_futex_hash() [all …]
|
H A D | epoll-wait.c | 118 struct worker { struct 186 struct worker *w = (struct worker *) arg; in workerfn() 240 static void nest_epollfd(struct worker *w) in nest_epollfd() 292 static int do_threads(struct worker *worker, struct perf_cpu_map *cpu) in do_threads() argument 318 struct worker *w = &worker[i]; in do_threads() 366 (void *)(struct worker *) w); in do_threads() 382 struct worker *worker = p; in writerfn() local 394 shuffle((void *)worker, nthreads, sizeof(*worker)); in writerfn() 398 struct worker *w = &worker[i]; in writerfn() 421 struct worker *w1 = (struct worker *) p1; in cmpworker() [all …]
|
H A D | futex-lock-pi.c | 27 struct worker { struct 35 static struct worker *worker; argument 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[i].futex = &global_futex; in create_threads() 155 if (pthread_create(&w[i].thread, &thread_attr, workerfn, &worker[i])) { in create_threads() 192 worker = calloc(params.nthreads, sizeof(*worker)); in bench_futex_lock_pi() [all …]
|
H A D | epoll-ctl.c | 67 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[i]; in do_threads() 277 (void *)(struct worker *) w); in do_threads() 317 struct worker *worker = NULL; in bench_epoll_ctl() local 352 worker = calloc(nthreads, sizeof(*worker)); in bench_epoll_ctl() [all …]
|
H A D | futex-wake.c | 36 static pthread_t *worker; variable 169 worker = calloc(params.nthreads, sizeof(*worker)); in bench_futex_wake() 170 if (!worker) in bench_futex_wake() 192 block_threads(worker, cpu); in bench_futex_wake() 221 ret = pthread_join(worker[i], NULL); in bench_futex_wake() 235 free(worker); in bench_futex_wake()
|
H A D | futex-requeue.c | 36 static pthread_t *worker; variable 194 worker = calloc(params.nthreads, sizeof(*worker)); in bench_futex_requeue() 195 if (!worker) in bench_futex_requeue() 223 block_threads(worker, cpu); in bench_futex_requeue() 295 ret = pthread_join(worker[i], NULL); in bench_futex_requeue() 308 free(worker); in bench_futex_requeue()
|
/openbmc/linux/drivers/vhost/ |
H A D | vhost.c | 236 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() 284 static void __vhost_worker_flush(struct vhost_worker *worker) in __vhost_worker_flush() argument 288 if (!worker->attachment_cnt || worker->killed) in __vhost_worker_flush() 294 vhost_worker_queue(worker, &flush.work); in __vhost_worker_flush() [all …]
|
/openbmc/linux/include/linux/ |
H A D | kthread.h | 135 struct kthread_worker *worker; member 163 extern void __kthread_init_worker(struct kthread_worker *worker, 166 #define kthread_init_worker(worker) \ argument 169 __kthread_init_worker((worker), "("#worker")->lock", &__key); \ 197 bool kthread_queue_work(struct kthread_worker *worker, 200 bool kthread_queue_delayed_work(struct kthread_worker *worker, 204 bool kthread_mod_delayed_work(struct kthread_worker *worker, 209 void kthread_flush_worker(struct kthread_worker *worker); 214 void kthread_destroy_worker(struct kthread_worker *worker);
|
H A D | devm-helpers.h | 48 work_func_t worker) in devm_delayed_work_autocancel() argument 50 INIT_DELAYED_WORK(w, worker); in devm_delayed_work_autocancel() 73 work_func_t worker) in devm_work_autocancel() argument 75 INIT_WORK(w, worker); in devm_work_autocancel()
|
/openbmc/linux/drivers/net/wireguard/ |
H A D | queueing.c | 13 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()
|
/openbmc/linux/drivers/gpu/drm/ |
H A D | drm_vblank_work.c | 60 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()
|
/openbmc/openbmc/poky/meta/recipes-devtools/subversion/ |
H A D | subversion_1.14.5.bb | 53 …worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/sub… 55 …1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrota… 56 #| /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-…
|
/openbmc/linux/samples/seccomp/ |
H A D | user-trap.c | 204 pid_t worker = 0 , tracer = 0; in main() local 211 worker = fork(); in main() 212 if (worker < 0) { in main() 217 if (worker == 0) { in main() 343 if (waitpid(worker, &status, 0) != worker) { in main() 368 if (worker > 0) in main() 369 kill(worker, SIGKILL); in main()
|
/openbmc/linux/drivers/gpu/drm/msm/ |
H A D | msm_atomic.c | 118 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()
|
H A D | msm_io_utils.c | 107 kthread_queue_work(work->worker, &work->work); in msm_hrtimer_worktimer() 120 struct kthread_worker *worker, in msm_hrtimer_work_init() argument 127 work->worker = worker; in msm_hrtimer_work_init()
|
/openbmc/linux/Documentation/core-api/ |
H A D | workqueue.rst | 20 queue is called workqueue and the thread is called worker. 22 While there are work items on the workqueue the worker executes the 24 there is no work item left on the workqueue the worker becomes idle. 25 When a new work item gets queued, the worker begins executing again. 32 worker thread per CPU and a single threaded (ST) wq had one worker 42 worker pool. An MT wq could provide only one execution context per CPU 60 * Use per-CPU unified worker pools shared by all wq to provide 64 * Automatically regulate worker pool and level of concurrency so that 80 Special purpose threads, called worker threads, execute the functions 82 worker threads become idle. These worker threads are managed in so [all …]
|
/openbmc/qemu/io/ |
H A D | task.c | 29 QIOTaskWorker worker; member 124 task->thread->worker(task, task->thread->opaque); in qio_task_thread_worker() 151 QIOTaskWorker worker, in qio_task_run_in_thread() argument 163 data->worker = worker; in qio_task_run_in_thread() 170 trace_qio_task_thread_start(task, worker, opaque); in qio_task_run_in_thread()
|
/openbmc/sdbusplus/src/async/ |
H A D | context.cpp | 240 auto worker = std::exchange(pending, nullptr); in wait_for_wait_process_stopped() local 241 while (worker == nullptr) in wait_for_wait_process_stopped() 249 worker = std::exchange(staged, nullptr); in wait_for_wait_process_stopped() 250 if (!worker) in wait_for_wait_process_stopped() 255 if (worker) in wait_for_wait_process_stopped() 257 worker->stop(); in wait_for_wait_process_stopped()
|
/openbmc/linux/drivers/i2c/ |
H A D | i2c-slave-testunit.c | 43 struct delayed_work worker; member 48 struct testunit_data *tu = container_of(work, struct testunit_data, worker.work); in i2c_slave_testunit_work() 118 queue_delayed_work(system_long_wq, &tu->worker, in i2c_slave_testunit_slave_cb() 161 INIT_DELAYED_WORK(&tu->worker, i2c_slave_testunit_work); in i2c_slave_testunit_probe() 170 cancel_delayed_work_sync(&tu->worker); in i2c_slave_testunit_remove()
|
/openbmc/qemu/hw/virtio/ |
H A D | vhost-backend.c | 162 struct vhost_worker_state *worker) in vhost_kernel_new_worker() argument 164 return vhost_kernel_call(dev, VHOST_NEW_WORKER, worker); in vhost_kernel_new_worker() 168 struct vhost_worker_state *worker) in vhost_kernel_free_worker() argument 170 return vhost_kernel_call(dev, VHOST_FREE_WORKER, worker); in vhost_kernel_free_worker() 174 struct vhost_vring_worker *worker) in vhost_kernel_attach_vring_worker() argument 176 return vhost_kernel_call(dev, VHOST_ATTACH_VRING_WORKER, worker); in vhost_kernel_attach_vring_worker() 180 struct vhost_vring_worker *worker) in vhost_kernel_get_vring_worker() argument 182 return vhost_kernel_call(dev, VHOST_GET_VRING_WORKER, worker); in vhost_kernel_get_vring_worker()
|
/openbmc/linux/drivers/block/ |
H A D | loop.c | 829 struct loop_worker *cur_worker, *worker = NULL; in loop_queue_work() local 844 worker = cur_worker; in loop_queue_work() 852 if (worker) in loop_queue_work() 855 worker = kzalloc(sizeof(struct loop_worker), GFP_NOWAIT | __GFP_NOWARN); in loop_queue_work() 860 if (!worker) { in loop_queue_work() 868 worker->blkcg_css = cmd->blkcg_css; in loop_queue_work() 869 css_get(worker->blkcg_css); in loop_queue_work() 870 INIT_WORK(&worker->work, loop_workfn); in loop_queue_work() 871 INIT_LIST_HEAD(&worker->cmd_list); in loop_queue_work() 872 INIT_LIST_HEAD(&worker->idle_list); in loop_queue_work() [all …]
|
/openbmc/linux/fs/erofs/ |
H A D | zdata.c | 345 struct kthread_worker *worker; in erofs_destroy_percpu_workers() local 349 worker = rcu_dereference_protected( in erofs_destroy_percpu_workers() 352 if (worker) in erofs_destroy_percpu_workers() 353 kthread_destroy_worker(worker); in erofs_destroy_percpu_workers() 360 struct kthread_worker *worker = in erofs_init_percpu_worker() local 363 if (IS_ERR(worker)) in erofs_init_percpu_worker() 364 return worker; in erofs_init_percpu_worker() 366 sched_set_fifo_low(worker->task); in erofs_init_percpu_worker() 367 return worker; in erofs_init_percpu_worker() 372 struct kthread_worker *worker; in erofs_init_percpu_workers() local [all …]
|