/kernel/linux/linux-5.10/include/linux/ |
H A D | kthread.h | 95 struct list_head work_list; member 116 .work_list = LIST_HEAD_INIT((worker).work_list), \
|
H A D | backing-dev-defs.h | 142 spinlock_t work_lock; /* protects work_list & dwork scheduling */ 143 struct list_head work_list; member
|
/kernel/linux/linux-5.10/tools/perf/ |
H A D | builtin-sched.c | 129 struct list_head work_list; member 1026 INIT_LIST_HEAD(&atoms->work_list); in thread_atoms_insert() 1056 list_add_tail(&atom->list, &atoms->work_list); in add_sched_out_event() 1066 BUG_ON(list_empty(&atoms->work_list)); in add_runtime_event() 1068 atom = list_entry(atoms->work_list.prev, struct work_atom, list); in add_runtime_event() 1080 if (list_empty(&atoms->work_list)) in add_sched_in_event() 1083 atom = list_entry(atoms->work_list.prev, struct work_atom, list); in add_sched_in_event() 1239 BUG_ON(list_empty(&atoms->work_list)); in latency_wakeup_event() 1241 atom = list_entry(atoms->work_list.prev, struct work_atom, list); in latency_wakeup_event() 1307 BUG_ON(list_empty(&atoms->work_list)); in latency_migrate_task_event() 1322 output_lat_thread(struct perf_sched *sched, struct work_atoms *work_list) output_lat_thread() argument 3190 struct work_atoms *work_list; perf_sched__lat() local [all...] |
/kernel/linux/linux-6.6/tools/perf/ |
H A D | builtin-sched.c | 130 struct list_head work_list; member 1048 INIT_LIST_HEAD(&atoms->work_list); in thread_atoms_insert() 1078 list_add_tail(&atom->list, &atoms->work_list); in add_sched_out_event() 1088 BUG_ON(list_empty(&atoms->work_list)); in add_runtime_event() 1090 atom = list_entry(atoms->work_list.prev, struct work_atom, list); in add_runtime_event() 1102 if (list_empty(&atoms->work_list)) in add_sched_in_event() 1105 atom = list_entry(atoms->work_list.prev, struct work_atom, list); in add_sched_in_event() 1261 BUG_ON(list_empty(&atoms->work_list)); in latency_wakeup_event() 1263 atom = list_entry(atoms->work_list.prev, struct work_atom, list); in latency_wakeup_event() 1329 BUG_ON(list_empty(&atoms->work_list)); in latency_migrate_task_event() 1344 output_lat_thread(struct perf_sched *sched, struct work_atoms *work_list) output_lat_thread() argument 3226 struct work_atoms *work_list; perf_sched__lat() local [all...] |
/kernel/linux/linux-5.10/drivers/dma/idxd/ |
H A D | irq.c | 193 list_add_tail(&desc->list, &irq_entry->work_list); in irq_process_pending_llist() 208 if (list_empty(&irq_entry->work_list)) in irq_process_work_list() 211 list_for_each_safe(node, next, &irq_entry->work_list) { in irq_process_work_list() 236 * the workqueue. It's a lockless singly linked list. The work_list in idxd_desc_process() 243 * 1. Iterate through the work_list and process any completed in idxd_desc_process() 249 * the work_list. in idxd_desc_process()
|
/kernel/linux/linux-5.10/drivers/block/drbd/ |
H A D | drbd_worker.c | 2070 static bool dequeue_work_batch(struct drbd_work_queue *queue, struct list_head *work_list) in dequeue_work_batch() argument 2073 list_splice_tail_init(&queue->q, work_list); in dequeue_work_batch() 2075 return !list_empty(work_list); in dequeue_work_batch() 2078 static void wait_for_work(struct drbd_connection *connection, struct list_head *work_list) in wait_for_work() argument 2084 dequeue_work_batch(&connection->sender_work, work_list); in wait_for_work() 2085 if (!list_empty(work_list)) in wait_for_work() 2111 list_splice_tail_init(&connection->sender_work.q, work_list); in wait_for_work() 2113 if (!list_empty(work_list) || signal_pending(current)) { in wait_for_work() 2168 LIST_HEAD(work_list); in drbd_worker() 2174 if (list_empty(&work_list)) { in drbd_worker() [all...] |
/kernel/linux/linux-6.6/drivers/block/drbd/ |
H A D | drbd_worker.c | 2077 static bool dequeue_work_batch(struct drbd_work_queue *queue, struct list_head *work_list) in dequeue_work_batch() argument 2080 list_splice_tail_init(&queue->q, work_list); in dequeue_work_batch() 2082 return !list_empty(work_list); in dequeue_work_batch() 2085 static void wait_for_work(struct drbd_connection *connection, struct list_head *work_list) in wait_for_work() argument 2091 dequeue_work_batch(&connection->sender_work, work_list); in wait_for_work() 2092 if (!list_empty(work_list)) in wait_for_work() 2118 list_splice_tail_init(&connection->sender_work.q, work_list); in wait_for_work() 2120 if (!list_empty(work_list) || signal_pending(current)) { in wait_for_work() 2175 LIST_HEAD(work_list); in drbd_worker() 2181 if (list_empty(&work_list)) { in drbd_worker() [all...] |
/kernel/linux/linux-5.10/drivers/infiniband/core/ |
H A D | iwcm.c | 216 BUG_ON(!list_empty(&cm_id_priv->work_list)); in iwcm_deref_id() 263 INIT_LIST_HEAD(&cm_id_priv->work_list); in iw_create_cm_id() 1008 * Process events on the work_list for the cm_id. If the callback 1026 empty = list_empty(&cm_id_priv->work_list); in cm_work_handler() 1028 work = list_entry(cm_id_priv->work_list.next, in cm_work_handler() 1031 empty = list_empty(&cm_id_priv->work_list); in cm_work_handler() 1055 * work_list. If this is the first event on the work_list, the work 1098 if (list_empty(&cm_id_priv->work_list)) { in cm_event_handler() 1099 list_add_tail(&work->list, &cm_id_priv->work_list); in cm_event_handler() [all...] |
H A D | iwcm.h | 53 struct list_head work_list; member
|
/kernel/linux/linux-5.10/kernel/ |
H A D | kthread.c | 696 INIT_LIST_HEAD(&worker->work_list); in __kthread_init_worker() 706 * work_list until it is stopped with kthread_stop(). It sleeps when the queue 744 if (!list_empty(&worker->work_list)) { in kthread_worker_fn() 745 work = list_first_entry(&worker->work_list, in kthread_worker_fn() 909 kthread_insert_work(worker, work, &worker->work_list); in kthread_queue_work() 947 kthread_insert_work(worker, work, &worker->work_list); in kthread_delayed_work_timer_fn() 970 kthread_insert_work(worker, work, &worker->work_list); in __kthread_queue_delayed_work() 1057 worker->work_list.next); in kthread_flush_work() 1112 * be from worker->work_list or from worker->delayed_work_list. in __kthread_cancel_work() 1303 WARN_ON(!list_empty(&worker->work_list)); in kthread_destroy_worker() [all...] |
/kernel/linux/linux-6.6/kernel/ |
H A D | kthread.c | 763 INIT_LIST_HEAD(&worker->work_list); in __kthread_init_worker() 773 * work_list until it is stopped with kthread_stop(). It sleeps when the queue 811 if (!list_empty(&worker->work_list)) { in kthread_worker_fn() 812 work = list_first_entry(&worker->work_list, in kthread_worker_fn() 1003 kthread_insert_work(worker, work, &worker->work_list); in kthread_queue_work() 1041 kthread_insert_work(worker, work, &worker->work_list); in kthread_delayed_work_timer_fn() 1063 kthread_insert_work(worker, work, &worker->work_list); in __kthread_queue_delayed_work() 1150 worker->work_list.next); in kthread_flush_work() 1205 * be from worker->work_list or from worker->delayed_work_list. in __kthread_cancel_work() 1401 WARN_ON(!list_empty(&worker->work_list)); in kthread_destroy_worker() [all...] |
/kernel/linux/linux-6.6/drivers/infiniband/core/ |
H A D | iwcm.c | 215 BUG_ON(!list_empty(&cm_id_priv->work_list)); in iwcm_deref_id() 262 INIT_LIST_HEAD(&cm_id_priv->work_list); in iw_create_cm_id() 1007 * Process events on the work_list for the cm_id. If the callback 1025 empty = list_empty(&cm_id_priv->work_list); in cm_work_handler() 1027 work = list_entry(cm_id_priv->work_list.next, in cm_work_handler() 1030 empty = list_empty(&cm_id_priv->work_list); in cm_work_handler() 1054 * work_list. If this is the first event on the work_list, the work 1097 if (list_empty(&cm_id_priv->work_list)) { in cm_event_handler() 1098 list_add_tail(&work->list, &cm_id_priv->work_list); in cm_event_handler() [all...] |
H A D | iwcm.h | 53 struct list_head work_list; member
|
/kernel/linux/linux-5.10/io_uring/ |
H A D | io-wq.c | 77 struct io_wq_work_list work_list; member 250 if (!wq_list_empty(&acct->work_list) && in io_acct_run_queue() 476 wq_list_for_each(node, prev, &acct->work_list) { 483 wq_list_del(&acct->work_list, node, prev); 494 wq_list_cut(&acct->work_list, &tail->list, prev); 896 wq_list_add_tail(&work->list, &acct->work_list); in io_wqe_insert_work() 906 wq_list_add_after(&work->list, &tail->list, &acct->work_list); in io_wqe_insert_work() 1018 wq_list_del(&acct->work_list, &work->list, prev); in io_wqe_remove_pending() 1029 wq_list_for_each(node, prev, &acct->work_list) { 1180 INIT_WQ_LIST(&acct->work_list); in io_wq_create() [all...] |
/kernel/linux/linux-6.6/io_uring/ |
H A D | io-wq.c | 83 struct io_wq_work_list work_list; member 248 !wq_list_empty(&acct->work_list); in __io_acct_run_queue() 484 wq_list_for_each(node, prev, &acct->work_list) { 491 wq_list_del(&acct->work_list, node, prev); 502 wq_list_cut(&acct->work_list, &tail->list, prev); 906 wq_list_add_tail(&work->list, &acct->work_list); in io_wq_insert_work() 916 wq_list_add_after(&work->list, &tail->list, &acct->work_list); in io_wq_insert_work() 1032 wq_list_del(&acct->work_list, &work->list, prev); in io_wq_remove_pending() 1043 wq_list_for_each(node, prev, &acct->work_list) { in io_acct_cancel_pending_work() 1175 INIT_WQ_LIST(&acct->work_list); in io_wq_create() [all...] |
/kernel/linux/linux-6.6/drivers/dma/idxd/ |
H A D | submit.c | 79 list_for_each_entry_safe(d, n, &ie->work_list, list) { in list_abort_desc() 119 list_add_tail(&d->list, &ie->work_list); in llist_abort_desc()
|
H A D | irq.c | 115 list_add_tail(&d->list, &ie->work_list); in idxd_abort_invalid_int_handle_descs() 118 list_for_each_entry_safe(d, t, &ie->work_list, list) { in idxd_abort_invalid_int_handle_descs() 585 &irq_entry->work_list); in irq_process_pending_llist() 601 if (list_empty(&irq_entry->work_list)) { in irq_process_work_list() 606 list_for_each_entry_safe(desc, n, &irq_entry->work_list, list) { in irq_process_work_list() 635 * the workqueue. It's a lockless singly linked list. The work_list in idxd_wq_thread() 642 * 1. Iterate through the work_list and process any completed in idxd_wq_thread() 648 * the work_list. in idxd_wq_thread()
|
/kernel/linux/linux-5.10/drivers/dma/ |
H A D | pl330.c | 397 * Also may be sitting on the work_list. 401 * Sitting on the work_list and already submitted 413 * Sitting on the channel work_list but xfer done 429 struct list_head work_list; member 2049 list_for_each_entry(desc, &pch->work_list, node) { in fill_queue() 2081 list_for_each_entry_safe(desc, _dt, &pch->work_list, node) in pl330_tasklet() 2091 if (list_empty(&pch->work_list)) { in pl330_tasklet() 2114 list_move_tail(&desc->node, &pch->work_list); in pl330_tasklet() 2309 list_for_each_entry(desc, &pch->work_list , node) { in pl330_terminate_all() 2315 list_splice_tail_init(&pch->work_list, in pl330_terminate_all() [all...] |
/kernel/linux/linux-6.6/drivers/dma/ |
H A D | pl330.c | 397 * Also may be sitting on the work_list. 401 * Sitting on the work_list and already submitted 413 * Sitting on the channel work_list but xfer done 429 struct list_head work_list; member 2047 list_for_each_entry(desc, &pch->work_list, node) { in fill_queue() 2079 list_for_each_entry_safe(desc, _dt, &pch->work_list, node) in pl330_tasklet() 2089 if (list_empty(&pch->work_list)) { in pl330_tasklet() 2112 list_move_tail(&desc->node, &pch->work_list); in pl330_tasklet() 2307 list_for_each_entry(desc, &pch->work_list , node) { in pl330_terminate_all() 2313 list_splice_tail_init(&pch->work_list, in pl330_terminate_all() [all...] |
/kernel/linux/linux-5.10/fs/btrfs/ |
H A D | ordered-data.h | 129 struct list_head work_list; member
|
H A D | ordered-data.c | 217 INIT_LIST_HEAD(&entry->work_list); in __btrfs_add_ordered_extent() 586 list_add_tail(&ordered->work_list, &works); in btrfs_wait_ordered_extents() 599 list_for_each_entry_safe(ordered, next, &works, work_list) { in btrfs_wait_ordered_extents() 600 list_del_init(&ordered->work_list); in btrfs_wait_ordered_extents()
|
/kernel/linux/linux-6.6/fs/btrfs/ |
H A D | ordered-data.h | 153 struct list_head work_list; member
|
/kernel/linux/linux-6.6/sound/soc/fsl/ |
H A D | imx-pcm-rpmsg.h | 469 * @work_list: array of work list for workqueue 496 struct work_of_rpmsg work_list[WORK_MAX_NUM]; member
|
H A D | imx-pcm-rpmsg.c | 123 memcpy(&info->work_list[index].msg, msg, in imx_rpmsg_insert_workqueue() 126 queue_work(info->rpmsg_wq, &info->work_list[index].work); in imx_rpmsg_insert_workqueue() 704 INIT_WORK(&info->work_list[i].work, imx_rpmsg_pcm_work); in imx_rpmsg_pcm_probe() 705 info->work_list[i].info = info; in imx_rpmsg_pcm_probe()
|
/kernel/linux/linux-6.6/include/linux/ |
H A D | backing-dev-defs.h | 139 spinlock_t work_lock; /* protects work_list & dwork scheduling */ 140 struct list_head work_list; member
|