Home
last modified time | relevance | path

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

12345678

/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/rust/kernel/
H A Dworkqueue.rs203 … $crate::workqueue::Work::new($crate::optional_name!($($name)?), $crate::static_lock_class!())
212 $crate::workqueue::DelayedWork::new(
225 $crate::workqueue::DelayedWork::new(
615 unsafe impl$(<$($generics)+>)? $crate::workqueue::HasWork<$work_type $(, $id)?> for $self {
617 … unsafe fn raw_get_work(ptr: *mut Self) -> *mut $crate::workqueue::Work<$work_type $(, $id)?> {
626 ptr: *mut $crate::workqueue::Work<$work_type $(, $id)?>,
769 $crate::workqueue::HasDelayedWork<$work_type $(, $id)?> for $self {}
773 unsafe impl$(<$($generics)+>)? $crate::workqueue::HasWork<$work_type $(, $id)?> for $self {
777 ) -> *mut $crate::workqueue::Work<$work_type $(, $id)?> {
779 let ptr: *mut $crate::workqueue::DelayedWork<$work_type $(, $id)?> = unsafe {
[all …]
/linux/net/vmw_vsock/
H A Dvsock_loopback.c16 struct workqueue_struct *workqueue; member
35 queue_work(vsock->workqueue, &vsock->pkt_work); in vsock_loopback_send_pkt()
142 vsock->workqueue = alloc_workqueue("vsock-loopback", 0, 0); in vsock_loopback_init()
143 if (!vsock->workqueue) in vsock_loopback_init()
157 destroy_workqueue(vsock->workqueue); in vsock_loopback_init()
171 destroy_workqueue(vsock->workqueue); in vsock_loopback_exit()
/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/drivers/misc/
H A Dtifm_core.c17 static struct workqueue_struct *workqueue; variable
221 flush_workqueue(workqueue); in tifm_remove_adapter()
309 queue_work(workqueue, work); in tifm_queue_work()
331 workqueue = create_freezable_workqueue("tifm"); in tifm_init()
332 if (!workqueue) in tifm_init()
347 destroy_workqueue(workqueue); in tifm_init()
356 destroy_workqueue(workqueue); in tifm_exit()
/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,
H A Dcore.c158 queue_work(bus->workqueue, &vif->reset_work); in qtnf_netdev_tx_timeout()
710 bus->workqueue = alloc_ordered_workqueue("QTNF_BUS", 0); in qtnf_core_attach()
711 if (!bus->workqueue) { in qtnf_core_attach()
799 if (bus->workqueue) { in qtnf_core_detach()
800 destroy_workqueue(bus->workqueue); in qtnf_core_detach()
801 bus->workqueue = NULL; in qtnf_core_detach()
/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()
263 queue_work(priv->workqueue, &priv->scan.work); in cw1200_scan_work()
277 if (queue_work(priv->workqueue, &priv->unjoin_work) <= 0) in cw1200_scan_restart_delayed()
288 queue_delayed_work(priv->workqueue, &priv->clear_recent_scan_work, HZ); in cw1200_scan_complete()
308 queue_delayed_work(priv->workqueue, &priv->scan.timeout, 0); in cw1200_scan_failed_cb()
322 queue_delayed_work(priv->workqueue, &priv->scan.timeout, 0); in cw1200_scan_complete_cb()
388 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.c672 if (queue_work(priv->workqueue, in cw1200_tx_h_rate_policy()
691 queue_work(priv->workqueue, in cw1200_tx_h_pm_state()
888 queue_work(priv->workqueue, in cw1200_tx_confirm_cb()
1175 queue_work(priv->workqueue, in cw1200_rx_cb()
1185 queue_work(priv->workqueue, in cw1200_rx_cb()
1277 flush_workqueue(priv->workqueue); in cw1200_link_id_reset()
1286 if (queue_work(priv->workqueue, in cw1200_link_id_reset()
1298 if (queue_work(priv->workqueue, &priv->link_id_work) <= 0) in cw1200_link_id_reset()
1300 flush_workqueue(priv->workqueue); in cw1200_link_id_reset()
1349 if (queue_work(priv->workqueue, &priv->link_id_work) <= 0) in cw1200_alloc_link_id()
[all …]
/linux/drivers/tty/serial/
H A Dmax3100.c105 struct workqueue_struct *workqueue; member
307 queue_work(s->workqueue, &s->work); in max3100_dowork()
538 if (s->workqueue) { in max3100_shutdown()
539 destroy_workqueue(s->workqueue); in max3100_shutdown()
540 s->workqueue = NULL; in max3100_shutdown()
569 s->workqueue = create_freezable_workqueue(b); in max3100_startup()
570 if (!s->workqueue) { in max3100_startup()
580 destroy_workqueue(s->workqueue); in max3100_startup()
581 s->workqueue = NULL; in max3100_startup()
805 if (s->workqueue) in max3100_resume()
/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
482 queue_work(workqueue, &proxy_dev->work); in vtpm_proxy_work_start()
691 workqueue = create_workqueue("tpm-vtpm"); in vtpm_module_init()
692 if (!workqueue) { in vtpm_module_init()
700 destroy_workqueue(workqueue); in vtpm_module_init()
708 destroy_workqueue(workqueue); in vtpm_module_exit()
/linux/net/bluetooth/
H A Dcoredump.c207 queue_delayed_work(hdev->workqueue, &hdev->dump.dump_timeout, in hci_devcd_handle_pkt_init()
465 queue_work(hdev->workqueue, &hdev->dump.dump_rx); in hci_devcd_init()
484 queue_work(hdev->workqueue, &hdev->dump.dump_rx); in hci_devcd_append()
509 queue_work(hdev->workqueue, &hdev->dump.dump_rx); in hci_devcd_append_pattern()
529 queue_work(hdev->workqueue, &hdev->dump.dump_rx); in hci_devcd_complete()
549 queue_work(hdev->workqueue, &hdev->dump.dump_rx); in hci_devcd_abort()
/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()
558 flush_workqueue(workqueue); in memstick_remove_host()
633 workqueue = create_freezable_workqueue("kmemstick"); in memstick_init()
634 if (!workqueue) in memstick_init()
650 destroy_workqueue(workqueue); in memstick_init()
659 destroy_workqueue(workqueue); in memstick_exit()
/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/net/qrtr/
H A Dns.c25 struct workqueue_struct *workqueue; member
684 queue_work(qrtr_ns.workqueue, &qrtr_ns.work); in qrtr_ns_data_ready()
706 qrtr_ns.workqueue = alloc_ordered_workqueue("qrtr_ns_handler", 0); in qrtr_ns_init()
707 if (!qrtr_ns.workqueue) { in qrtr_ns_init()
752 destroy_workqueue(qrtr_ns.workqueue); in qrtr_ns_init()
762 destroy_workqueue(qrtr_ns.workqueue); in qrtr_ns_remove()
/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", WQ_MEM_RECLAIM, 0); in if_sdio_probe()
1185 if (unlikely(!card->workqueue)) { in if_sdio_probe()
1238 flush_workqueue(card->workqueue); in if_sdio_probe()
1243 destroy_workqueue(card->workqueue); in if_sdio_probe()
1286 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", WQ_MEM_RECLAIM, 0); in if_spi_probe()
1157 if (!card->workqueue) { in if_spi_probe()
1188 destroy_workqueue(card->workqueue); in if_spi_probe()
1213 destroy_workqueue(card->workqueue); in libertas_spi_remove()
1226 flush_workqueue(card->workqueue); in if_spi_suspend()
/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/tools/workqueue/
H A Dwq_monitor.py135 if args.workqueue:
136 for r in args.workqueue:
/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()
1568 if (adapter->workqueue) in __pvscsi_shutdown()
1569 flush_workqueue(adapter->workqueue); in __pvscsi_shutdown()
/linux/drivers/cdx/controller/
H A Dmcdi.c114 mcdi->workqueue = alloc_ordered_workqueue("mcdi_wq", 0); in cdx_mcdi_init()
115 if (!mcdi->workqueue) in cdx_mcdi_init()
142 destroy_workqueue(mcdi->workqueue); in cdx_mcdi_finish()
180 flush_workqueue(mcdi->workqueue); in cdx_mcdi_wait_for_quiescence()
523 queue_work(mcdi->workqueue, &cmd->work); in cdx_mcdi_rpc_async_internal()

12345678