| /Linux-v5.4/include/linux/ |
| D | completion.h | 26 struct completion { struct 33 static inline void complete_acquire(struct completion *x) {} in complete_acquire() argument 34 static inline void complete_release(struct completion *x) {} in complete_release() 54 struct completion work = COMPLETION_INITIALIZER(work) 70 struct completion work = COMPLETION_INITIALIZER_ONSTACK(work) 72 struct completion work = COMPLETION_INITIALIZER_ONSTACK_MAP(work, map) 85 static inline void __init_completion(struct completion *x) in __init_completion() 98 static inline void reinit_completion(struct completion *x) in reinit_completion() 103 extern void wait_for_completion(struct completion *); 104 extern void wait_for_completion_io(struct completion *); [all …]
|
| /Linux-v5.4/kernel/sched/ |
| D | completion.c | 28 void complete(struct completion *x) in complete() 57 void complete_all(struct completion *x) in complete_all() 69 do_wait_for_common(struct completion *x, in do_wait_for_common() 96 __wait_for_common(struct completion *x, in __wait_for_common() 113 wait_for_common(struct completion *x, long timeout, int state) in wait_for_common() 119 wait_for_common_io(struct completion *x, long timeout, int state) in wait_for_common_io() 134 void __sched wait_for_completion(struct completion *x) in wait_for_completion() 153 wait_for_completion_timeout(struct completion *x, unsigned long timeout) in wait_for_completion_timeout() 167 void __sched wait_for_completion_io(struct completion *x) in wait_for_completion_io() 187 wait_for_completion_io_timeout(struct completion *x, unsigned long timeout) in wait_for_completion_io_timeout() [all …]
|
| /Linux-v5.4/Documentation/scheduler/ |
| D | completion.rst | 2 Completions - "wait for completion" barrier APIs 27 is reduced to a simple flag in 'struct completion', appropriately called "done". 30 kernel/sched/completion.c. 38 - the initialization of the 'struct completion' synchronization object 45 to have marked a completion as 'done' before another thread checks whether 48 To use completions you need to #include <linux/completion.h> and 49 create a static or dynamic variable of type 'struct completion', 52 struct completion { 58 the ->done completion flag for indicating whether it's completed or not. 67 Good, intuitive naming (as always) helps code readability. Naming a completion [all …]
|
| /Linux-v5.4/tools/testing/selftests/rcutorture/formal/srcu-cbmc/src/ |
| D | locks.h | 176 struct completion { struct 182 #define DECLARE_COMPLETION(x) struct completion x = COMPLETION_INITIALIZER(x) argument 185 static inline void init_completion(struct completion *c) in init_completion() 190 static inline void wait_for_completion(struct completion *c) in wait_for_completion() 197 static inline void complete(struct completion *c) in complete() 205 static inline bool try_wait_for_completion(struct completion *c) in try_wait_for_completion() 210 static inline bool completion_done(struct completion *c) in completion_done() 216 static inline void complete_all(struct completion *c) in complete_all()
|
| /Linux-v5.4/drivers/scsi/aic94xx/ |
| D | aic94xx_tmf.c | 67 complete(ascb->completion); in asd_clear_nexus_tasklet_complete() 78 complete(ascb->completion); in asd_clear_nexus_timedout() 85 DECLARE_COMPLETION_ONSTACK(completion); \ 94 ascb->completion = &completion; \ 106 wait_for_completion(&completion); \ 252 complete(ascb->completion); in asd_tmf_timedout() 320 complete(ascb->completion); in asd_tmf_tasklet_complete() 329 DECLARE_COMPLETION_ONSTACK(completion); in asd_clear_nexus() 332 tascb->completion = &completion; in asd_clear_nexus() 339 leftover = wait_for_completion_timeout(&completion, in asd_clear_nexus() [all …]
|
| /Linux-v5.4/arch/powerpc/sysdev/ |
| D | pmi.c | 33 struct completion *completion; member 52 if (type & PMI_ACK && !data->completion) { in pmi_irq_handler() 58 if (data->completion && !(type & PMI_ACK)) { in pmi_irq_handler() 78 complete(data->completion); in pmi_irq_handler() 208 DECLARE_COMPLETION_ONSTACK(completion); in pmi_send_message() 218 data->completion = &completion; in pmi_send_message() 229 wait_for_completion_interruptible_timeout(data->completion, in pmi_send_message() 232 data->completion = NULL; in pmi_send_message()
|
| /Linux-v5.4/drivers/staging/rts5208/ |
| D | rtsx.h | 96 struct completion cmnd_ready; /* to sleep thread on */ 97 struct completion control_exit; /* control thread exit */ 98 struct completion polling_exit; /* polling thread exit */ 99 struct completion notify; /* thread begin/end */ 100 struct completion scanning_done; /* wait for scan thread */ 112 struct completion *done;
|
| /Linux-v5.4/drivers/char/hw_random/ |
| D | timeriomem-rng.c | 39 struct completion completion; member 61 wait_for_completion(&priv->completion); in timeriomem_rng_read() 85 reinit_completion(&priv->completion); in timeriomem_rng_read() 98 complete(&priv->completion); in timeriomem_rng_trigger() 156 init_completion(&priv->completion); in timeriomem_rng_probe() 170 complete(&priv->completion); in timeriomem_rng_probe()
|
| /Linux-v5.4/Documentation/driver-api/usb/ |
| D | URB.rst | 36 - Each URB has a completion handler, which is called after the action 38 context-pointer for passing information to the completion handler. 42 data to an endpoint while your driver handles completion of another. 60 // (IN) all urbs need completion routines 61 void *context; // context for completion routine 62 usb_complete_t complete; // pointer to completion routine 64 // (OUT) status after each completion 110 returned to you in a completion callback. It will automatically be 122 length, the completion handler, and its context. Take a look at the some 156 never look at that value except in your completion callback. [all …]
|
| /Linux-v5.4/net/bluetooth/ |
| D | ecdh_helper.c | 29 struct completion completion; member 41 complete(&res->completion); in ecdh_complete() 79 init_completion(&result.completion); in compute_ecdh_secret() 92 wait_for_completion(&result.completion); in compute_ecdh_secret() 186 init_completion(&result.completion); in generate_ecdh_public_key() 195 wait_for_completion(&result.completion); in generate_ecdh_public_key()
|
| /Linux-v5.4/drivers/soc/qcom/ |
| D | glink_ssr.c | 54 struct completion completion; member 79 complete(&ssr->completion); in qcom_glink_ssr_callback() 93 reinit_completion(&ssr->completion); in qcom_glink_ssr_notify() 105 ret = wait_for_completion_timeout(&ssr->completion, HZ); in qcom_glink_ssr_notify() 120 init_completion(&ssr->completion); in qcom_glink_ssr_probe()
|
| /Linux-v5.4/drivers/s390/char/ |
| D | sclp_ftp.c | 37 struct completion *completion = data; in sclp_ftp_txcb() local 43 complete(completion); in sclp_ftp_txcb() 87 struct completion completion; in sclp_ftp_et7() local 128 req->callback_data = &completion; in sclp_ftp_et7() 130 init_completion(&completion); in sclp_ftp_et7() 137 wait_for_completion(&completion); in sclp_ftp_et7()
|
| D | sclp_pci.c | 105 struct completion *completion = data; in sclp_pci_callback() local 107 complete(completion); in sclp_pci_callback() 132 DECLARE_COMPLETION_ONSTACK(completion); in sclp_pci_report() 158 req.callback_data = &completion; in sclp_pci_report() 179 wait_for_completion(&completion); in sclp_pci_report()
|
| /Linux-v5.4/Documentation/admin-guide/blockdev/drbd/ |
| D | disk-states-8.dot | 11 Consistent -> Failed [ label = "io completion error" ] 12 Outdated -> Failed [ label = "io completion error" ] 13 UpToDate -> Failed [ label = "io completion error" ] 14 Inconsistent -> Failed [ label = "io completion error" ]
|
| /Linux-v5.4/drivers/staging/vc04_services/interface/vchiq_arm/ |
| D | vchiq_arm.h | 44 struct completion ka_evt; 49 struct completion vc_suspend_complete; 50 struct completion vc_resume_complete; 78 struct completion resume_blocker; 80 struct completion blocked_blocker;
|
| /Linux-v5.4/Documentation/sparc/oradax/ |
| D | oracle-dax.rst | 41 pointer to a "completion area", which is a 128 byte memory block that 43 interrupt is generated upon completion; the completion area must be 46 processor until the completion status has been updated by the 52 completion of a request and resumption of execution of the requesting 85 call, and gets results (if any) via read(). The completion areas are 96 requests. The completion area buffer is also allocated, and this is 97 large enough to contain the completion areas for many concurrent 116 requests. Since no interrupt is generated upon the completion of a 142 completion area to use, and may be set via lseek() or using the 157 The mmap() function provides access to the completion area allocated [all …]
|
| /Linux-v5.4/net/smc/ |
| D | smc_core.h | 121 struct completion llc_confirm; /* wait for rx of conf link */ 122 struct completion llc_confirm_resp; /* wait 4 rx of cnf lnk rsp */ 125 struct completion llc_add; /* wait for rx of add link */ 126 struct completion llc_add_resp; /* wait for rx of add link rsp*/ 128 struct completion llc_testlink_resp; /* wait for rx of testlink */ 130 struct completion llc_confirm_rkey; /* wait 4 rx of cnf rkey */ 132 struct completion llc_delete_rkey; /* wait 4 rx of del rkey */
|
| /Linux-v5.4/drivers/net/ethernet/brocade/bna/ |
| D | bnad.h | 121 struct completion comp; 126 struct completion ioc_comp; 127 struct completion ucast_comp; 128 struct completion mcast_comp; 129 struct completion tx_comp; 130 struct completion rx_comp; 131 struct completion stats_comp; 132 struct completion enet_comp; 133 struct completion mtu_comp;
|
| /Linux-v5.4/drivers/md/ |
| D | dm-core.h | 24 struct completion completion; member 122 static inline struct completion *dm_get_completion_from_kobject(struct kobject *kobj) in dm_get_completion_from_kobject() 124 return &container_of(kobj, struct dm_kobject_holder, kobj)->completion; in dm_get_completion_from_kobject()
|
| /Linux-v5.4/drivers/gpu/drm/nouveau/nvkm/falcon/ |
| D | msgqueue.h | 166 struct completion *completion; member 191 struct completion init_done; 202 struct completion *, bool);
|
| /Linux-v5.4/drivers/scsi/bfa/ |
| D | bfad_drv.h | 144 struct completion *comp_del; 193 struct completion comp; 194 struct completion suspend; 195 struct completion enable_comp; 196 struct completion disable_comp; 275 struct completion comp; 280 struct completion comp;
|
| /Linux-v5.4/drivers/net/wireless/ath/ath10k/ |
| D | core.h | 163 struct completion service_ready; 164 struct completion unified_ready; 165 struct completion barrier; 166 struct completion radar_confirm; 626 struct completion fw_stats_complete; 639 struct completion tpc_complete; 983 struct completion target_suspend; 984 struct completion driver_recovery; 1029 struct completion started; 1030 struct completion completed; [all …]
|
| /Linux-v5.4/drivers/iio/adc/ |
| D | stmpe-adc.c | 55 struct completion completion; member 68 reinit_completion(&info->completion); in stmpe_read_voltage() 80 ret = wait_for_completion_timeout(&info->completion, STMPE_ADC_TIMEOUT); in stmpe_read_voltage() 103 reinit_completion(&info->completion); in stmpe_read_temp() 115 ret = wait_for_completion_timeout(&info->completion, STMPE_ADC_TIMEOUT); in stmpe_read_temp() 203 complete(&info->completion); in stmpe_adc_isr() 277 init_completion(&info->completion); in stmpe_adc_probe()
|
| /Linux-v5.4/include/target/iscsi/ |
| D | iscsi_target_core.h | 558 struct completion conn_post_wait_comp; 559 struct completion conn_wait_comp; 560 struct completion conn_wait_rcfr_comp; 561 struct completion conn_waiting_on_uc_comp; 562 struct completion conn_logout_comp; 563 struct completion tx_half_close_comp; 564 struct completion rx_half_close_comp; 613 struct completion rx_login_comp; 689 struct completion async_msg_comp; 690 struct completion reinstatement_comp; [all …]
|
| /Linux-v5.4/drivers/base/firmware_loader/ |
| D | firmware.h | 55 struct completion completion; member 95 ret = wait_for_completion_killable_timeout(&fw_st->completion, timeout); in __fw_state_wait_common() 112 complete_all(&fw_st->completion); in __fw_state_set()
|