Home
last modified time | relevance | path

Searched refs:workqueue (Results 1 – 25 of 151) sorted by relevance

1234567

/linux/Documentation/translations/zh_CN/core-api/
H A Dworkqueue.rst4 :Original: Documentation/core-api/workqueue.rst
31 列被称为workqueue,线程被称为工作者(worker,即执行这一队列的线程)。
74 向该函数的工作项,并在工作队列中排队等待该工作项。(就是挂到workqueue
95 ``workqueue API`` 函数创建和排队工作项。他们可以通过在工作队列上
123 workqueue将自动创建与属性相匹配的后备工作者池。调节并发水平的责任在
137 ``alloc_workqueue()`` 分配了一个wq。原来的 ``create_*workqueue()``
324 使用模块参数 ``workqueue.default_affinity_scope`` 指定
346 默认的亲和性作用域可以被模块参数 ``workqueue.default_affinity_scope``
350 如果设置了 ``WQ_SYSFS`` ,工作队列会在它的 ``/sys/devices/virtual/workqueue/WQ_NAME/``
537 使用 tools/workqueue/wq_dump.py(drgn脚本) 来检查未
[all …]
/linux/include/trace/events/
H A Dworkqueue.h3 #define TRACE_SYSTEM workqueue
9 #include <linux/workqueue.h>
20 * delayed work is actually queued on a workqueue (ie: once the delay
33 __string( workqueue, pwq->wq->name)
41 __assign_str(workqueue);
46 TP_printk("work struct=%p function=%ps workqueue=%s req_cpu=%d cpu=%d",
47 __entry->work, __entry->function, __get_str(workqueue),
79 * workqueue_execute_start - called immediately before the workqueue callback
82 * Allows to track workqueue execution.
104 * workqueue_execute_end - called immediately after the workqueue callbac
[all...]
/linux/Documentation/core-api/
H A Dworkqueue.rst14 is needed and the workqueue (wq) API is the most commonly used
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.
58 * Maintain compatibility with the original workqueue API.
78 workqueue.
99 the BH execution context. A BH workqueue can be considered a convenience
103 workqueue API functions as they see fit. They can influence some
105 workqueue they are putting the work item on. These flags include
110 When a work item is queued to a workqueue, the target worker-pool is
[all …]
/linux/drivers/net/wireless/quantenna/qtnfmac/
H A Dshm_ipc.c62 queue_work(ipc->workqueue, &ipc->irq_work); in qtnf_shm_ipc_irq_inbound_handler()
83 struct workqueue_struct *workqueue, in qtnf_shm_ipc_init() argument
97 ipc->workqueue = workqueue; in qtnf_shm_ipc_init()
H A Dshm_ipc.h46 struct workqueue_struct *workqueue; member
54 struct workqueue_struct *workqueue,
/linux/net/mac802154/
H A Dmain.c204 local->workqueue = in ieee802154_register_hw()
206 if (!local->workqueue) { in ieee802154_register_hw()
269 destroy_workqueue(local->workqueue); in ieee802154_register_hw()
280 flush_workqueue(local->workqueue); in ieee802154_unregister_hw()
289 destroy_workqueue(local->workqueue); in ieee802154_unregister_hw()
/linux/drivers/net/wireless/st/cw1200/
H A Dscan.c40 queue_delayed_work(priv->workqueue, &priv->scan.timeout, in cw1200_scan_start()
122 queue_work(priv->workqueue, &priv->scan.work); in cw1200_hw_scan()
261 queue_work(priv->workqueue, &priv->scan.work); in cw1200_scan_work()
275 if (queue_work(priv->workqueue, &priv->unjoin_work) <= 0) in cw1200_scan_restart_delayed()
286 queue_delayed_work(priv->workqueue, &priv->clear_recent_scan_work, HZ); in cw1200_scan_complete()
306 queue_delayed_work(priv->workqueue, &priv->scan.timeout, 0); in cw1200_scan_failed_cb()
320 queue_delayed_work(priv->workqueue, &priv->scan.timeout, 0); in cw1200_scan_complete_cb()
386 queue_delayed_work(priv->workqueue, &priv->scan.probe_work, in cw1200_probe_work()
H A Dmain.c349 priv->workqueue = create_singlethread_workqueue("cw1200_wq"); in cw1200_init_common()
350 if (!priv->workqueue) { in cw1200_init_common()
389 destroy_workqueue(priv->workqueue); in cw1200_init_common()
401 destroy_workqueue(priv->workqueue); in cw1200_init_common()
470 destroy_workqueue(priv->workqueue); in cw1200_unregister_common()
471 priv->workqueue = NULL; in cw1200_unregister_common()
H A Dsta.c115 flush_workqueue(priv->workqueue); in cw1200_stop()
167 queue_delayed_work(priv->workqueue, in __cw1200_cqm_bssloss_sm()
178 queue_work(priv->workqueue, &priv->bss_params_work); in __cw1200_cqm_bssloss_sm()
264 if (queue_work(priv->workqueue, &priv->unjoin_work) <= 0) in cw1200_remove_interface()
993 queue_delayed_work(priv->workqueue, in cw1200_event_handler()
1043 if (queue_work(priv->workqueue, &priv->unjoin_work) <= 0) in cw1200_bss_loss_work()
1201 queue_work(priv->workqueue, &priv->join_complete_work); in cw1200_join_complete_cb()
1327 queue_delayed_work(priv->workqueue, in cw1200_do_join()
1344 if (queue_work(priv->workqueue, &priv->unjoin_work) <= 0) in cw1200_do_join()
1374 if (queue_work(priv->workqueue, &priv->unjoin_work) <= 0) in cw1200_join_timeout()
[all …]
H A Dtxrx.c673 if (queue_work(priv->workqueue, in cw1200_tx_h_rate_policy()
692 queue_work(priv->workqueue, in cw1200_tx_h_pm_state()
902 queue_work(priv->workqueue, in cw1200_tx_confirm_cb()
1189 queue_work(priv->workqueue, in cw1200_rx_cb()
1199 queue_work(priv->workqueue, in cw1200_rx_cb()
1291 flush_workqueue(priv->workqueue); in cw1200_link_id_reset()
1300 if (queue_work(priv->workqueue, in cw1200_link_id_reset()
1312 if (queue_work(priv->workqueue, &priv->link_id_work) <= 0) in cw1200_find_link_id()
1314 flush_workqueue(priv->workqueue); in cw1200_find_link_id()
1363 if (queue_work(priv->workqueue, in cw1200_link_id_work()
[all...]
/linux/drivers/tty/serial/
H A Dmax3100.c103 /* for handling irqs: need workqueue since we do spi_sync */
104 struct workqueue_struct *workqueue; member
108 /* need to know we are suspending to avoid deadlock on workqueue */
306 queue_work(s->workqueue, &s->work); in max3100_dowork()
537 if (s->workqueue) { in max3100_shutdown()
540 destroy_workqueue(s->workqueue); in max3100_shutdown()
541 s->workqueue = NULL; in max3100_shutdown()
568 s->workqueue = create_freezable_workqueue(b); in max3100_startup()
569 if (!s->workqueue) { in max3100_startup()
570 dev_warn(&s->spi->dev, "cannot create workqueue\ in max3100_startup()
[all...]
/linux/drivers/media/platform/amphion/
H A Dvpu_msgs.c289 if (!inst->workqueue) in vpu_inst_handle_msg()
296 queue_work(inst->workqueue, &inst->msg_work); in vpu_inst_handle_msg()
369 queue_delayed_work(core->workqueue, &core->msg_delayed_work, delay); in vpu_msg_run_work()
394 if (inst->workqueue && kfifo_len(&inst->msg_fifo) >= bytes) in vpu_msg_delayed_work()
395 queue_work(inst->workqueue, &inst->msg_work); in vpu_msg_delayed_work()
418 queue_work(core->workqueue, &core->msg_work); in vpu_isr()
/linux/drivers/char/tpm/
H A Dtpm_vtpm_proxy.c53 static struct workqueue_struct *workqueue; variable
478 queue_work(workqueue, &proxy_dev->work); in vtpm_proxy_work_start()
687 workqueue = create_workqueue("tpm-vtpm"); in vtpm_module_init()
688 if (!workqueue) { in vtpm_module_init()
696 destroy_workqueue(workqueue); in vtpm_module_init()
704 destroy_workqueue(workqueue); in vtpm_module_exit()
/linux/drivers/memstick/core/
H A Dmemstick.c24 static struct workqueue_struct *workqueue; variable
207 queue_work(workqueue, &host->media_checker); in memstick_detect_change()
561 flush_workqueue(workqueue); in memstick_remove_host()
636 workqueue = create_freezable_workqueue("kmemstick"); in memstick_init()
637 if (!workqueue) in memstick_init()
653 destroy_workqueue(workqueue); in memstick_init()
662 destroy_workqueue(workqueue); in memstick_exit()
/linux/drivers/input/rmi4/
H A Drmi_f54.c115 struct workqueue_struct *workqueue; member
212 queue_delayed_work(f54->workqueue, &f54->work, 0); in rmi_f54_request_report()
623 queue_delayed_work(f54->workqueue, &f54->work, in rmi_f54_work()
710 f54->workqueue = create_singlethread_workqueue("rmi4-poller"); in rmi_f54_probe()
711 if (!f54->workqueue) in rmi_f54_probe()
755 destroy_workqueue(f54->workqueue); in rmi_f54_probe()
765 destroy_workqueue(f54->workqueue); in rmi_f54_remove()
/linux/drivers/net/ethernet/mellanox/mlx4/
H A Den_main.c215 queue_work(mdev->workqueue, &priv->linkstate_task); in mlx4_en_event()
254 destroy_workqueue(mdev->workqueue); in mlx4_en_remove()
332 mdev->workqueue = create_singlethread_workqueue("mlx4_en"); in mlx4_en_probe()
333 if (!mdev->workqueue) { in mlx4_en_probe()
/linux/Documentation/fb/
H A Ddeferred_io.rst16 - schedule a workqueue task to be run after a delay
19 - the workqueue task comes in and mkcleans the pages on the list, then
70 from a workqueue.
/linux/drivers/net/wireless/marvell/libertas/
H A Dif_sdio.c124 struct workqueue_struct *workqueue; member
968 queue_work(card->workqueue, &card->packet_worker); in if_sdio_host_to_card()
1069 flush_workqueue(card->workqueue); in if_sdio_power_save()
1184 card->workqueue = alloc_workqueue("libertas_sdio", in if_sdio_probe()
1186 if (unlikely(!card->workqueue)) { in if_sdio_probe()
1239 flush_workqueue(card->workqueue); in if_sdio_probe()
1244 destroy_workqueue(card->workqueue); in if_sdio_probe()
1287 destroy_workqueue(card->workqueue); in if_sdio_remove()
H A Dif_spi.c58 struct workqueue_struct *workqueue; member
984 queue_work(card->workqueue, &card->packet_work); in if_spi_host_to_card()
999 queue_work(card->workqueue, &card->packet_work); in if_spi_host_interrupt()
1156 card->workqueue = alloc_workqueue("libertas_spi", in if_spi_probe()
1158 if (!card->workqueue) { in if_spi_probe()
1189 destroy_workqueue(card->workqueue); in if_spi_probe()
1214 destroy_workqueue(card->workqueue); in libertas_spi_remove()
1227 flush_workqueue(card->workqueue); in if_spi_suspend()
/linux/tools/workqueue/
H A Dwq_monitor.py135 if args.workqueue:
136 for r in args.workqueue:
/linux/net/qrtr/
H A Dns.c26 struct workqueue_struct *workqueue; member
704 queue_work(qrtr_ns.workqueue, &qrtr_ns.work); in qrtr_ns_data_ready()
726 qrtr_ns.workqueue = alloc_ordered_workqueue("qrtr_ns_handler", 0); in qrtr_ns_init()
727 if (!qrtr_ns.workqueue) { in qrtr_ns_init()
773 destroy_workqueue(qrtr_ns.workqueue); in qrtr_ns_init()
788 destroy_workqueue(qrtr_ns.workqueue); in qrtr_ns_remove()
/linux/Documentation/driver-api/crypto/iaa/
H A Diaa-crypto.rst175 For instance, here's an example of configuring an IAA workqueue and
194 Whenever a new workqueue is bound to or unbound from the iaa_crypto
197 workqueue available. Current best practice is to configure and bind
198 at least one workqueue for each IAA device, but as long as there is at
199 least one workqueue configured and bound to any IAA device in the
205 binding of the first IAA workqueue to the iaa_crypto driver.
448 system to be configured properly as a kernel workqueue with a
449 workqueue driver_name of "crypto".
525 system to be configured properly as a kernel workqueue with a
526 workqueue driver_name of "crypto".
[all …]
/linux/drivers/cdx/controller/
H A Dmcdi.c128 mcdi->workqueue = alloc_ordered_workqueue("mcdi_wq", 0); in cdx_mcdi_init()
129 if (!mcdi->workqueue) in cdx_mcdi_init()
165 destroy_workqueue(mcdi->workqueue); in cdx_mcdi_finish()
204 flush_workqueue(mcdi->workqueue); in cdx_mcdi_wait_for_quiescence()
547 queue_work(mcdi->workqueue, &cmd->work); in cdx_mcdi_rpc_async_internal()
/linux/drivers/scsi/
H A Dvmw_pvscsi.c75 struct workqueue_struct *workqueue; member
918 flush_workqueue(adapter->workqueue); in pvscsi_host_reset()
1140 adapter->workqueue = in pvscsi_setup_msg_workqueue()
1142 if (!adapter->workqueue) { in pvscsi_setup_msg_workqueue()
1187 queue_work(adapter->workqueue, &adapter->work); in pvscsi_isr()
1221 if (adapter->workqueue) in pvscsi_release_resources()
1222 destroy_workqueue(adapter->workqueue); in pvscsi_release_resources()
1567 if (adapter->workqueue) in __pvscsi_shutdown()
1568 flush_workqueue(adapter->workqueue); in __pvscsi_shutdown()
/linux/drivers/net/ethernet/sfc/siena/
H A Defx_common.c208 queue_work(efx->workqueue, &efx->mac_work); in efx_siena_set_rx_mode()
351 queue_delayed_work(efx->workqueue, &efx->monitor_work, in efx_siena_start_monitor()
1046 efx->workqueue = create_singlethread_workqueue(efx->workqueue_name); in efx_siena_init_struct()
1047 if (!efx->workqueue) { in efx_siena_init_struct()
1069 if (efx->workqueue) { in efx_siena_fini_struct()
1070 destroy_workqueue(efx->workqueue); in efx_siena_fini_struct()
1071 efx->workqueue = NULL; in efx_siena_fini_struct()

1234567