/Linux-v5.15/include/linux/ |
D | completion.h | 8 * Atomic wait-for-completion handler data structures. 9 * See kernel/sched/completion.c for details. 15 * struct completion - structure used to maintain state for a "completion" 17 * This is the opaque structure used to maintain the state for a "completion". 19 * the "completion" event. 26 struct completion { struct 32 static inline void complete_acquire(struct completion *x) {} in complete_acquire() argument 33 static inline void complete_release(struct completion *x) {} in complete_release() 45 * DECLARE_COMPLETION - declare and initialize a completion structure 46 * @work: identifier for the completion structure [all …]
|
/Linux-v5.15/kernel/sched/ |
D | completion.c | 3 * Generic wait-for-completion handler; 12 * Waiting for completion is a typically sync point, but not an exclusion point. 17 * complete: - signals a single thread waiting on this completion 18 * @x: holds the state of this particular completion 20 * This will wake up a single thread waiting on this completion. Threads will be 28 void complete(struct completion *x) in complete() 42 * complete_all: - signals all threads waiting on this completion 43 * @x: holds the state of this particular completion 45 * This will wake up all threads waiting on this particular completion event. 50 * Since complete_all() sets the completion of @x permanently to done [all …]
|
/Linux-v5.15/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.15/tools/perf/pmu-events/arch/powerpc/power8/ |
D | pipeline.json | 23 "BriefDescription": "Completion stall", 29 "BriefDescription": "Completion stall due to a Branch Unit", 35 "BriefDescription": "Completion stall by Dcache miss", 41 …"BriefDescription": "Completion stall by Dcache miss which resolved on chip ( excluding local L2/L… 47 "BriefDescription": "Completion stall by Dcache miss which resolved in L2/L3", 53 …"BriefDescription": "Completion stall due to cache miss that resolves in the L2 or L3 with a confl… 54 …"PublicDescription": "Completion stall due to cache miss resolving in core's L2/L3 with a conflict" 59 "BriefDescription": "Completion stall due to cache miss resolving missed the L3", 65 "BriefDescription": "Completion stall due to cache miss that resolves in local memory", 66 "PublicDescription": "Completion stall due to cache miss resolving in core's Local Memory" [all …]
|
/Linux-v5.15/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.15/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.15/drivers/scsi/isci/ |
D | scu_completion_codes.h | 60 * This file contains the constants and macros for the SCU hardware completion 72 * This macro constructs an SCU completion type 80 * These macros contain the SCU completion types SCU_COMPLETION_TYPE 92 * an SCU completion code. 107 * This macro returns the SCU completion type. 115 * This macro returns the SCU completion status. 123 * This macro returns the transport layer completion status. 131 * This macro takes a completion code and performs the shift and mask 132 * operations to turn it into a completion code that can be compared to a 153 * This macro returns the SDMA completion status. [all …]
|
/Linux-v5.15/drivers/net/wwan/iosm/ |
D | iosm_ipc_task_queue.c | 27 /* Signal completion for synchronous calls */ in ipc_task_queue_handler() 28 if (args->completion) in ipc_task_queue_handler() 29 complete(args->completion); in ipc_task_queue_handler() 42 args->completion = NULL; in ipc_task_queue_handler() 64 if (args->completion) in ipc_task_queue_cleanup() 65 complete(args->completion); in ipc_task_queue_cleanup() 85 struct completion completion; in ipc_task_queue_add_task() local 90 init_completion(&completion); in ipc_task_queue_add_task() 111 ipc_task->args[pos].completion = wait ? &completion : NULL; in ipc_task_queue_add_task() 130 wait_for_completion(&completion); in ipc_task_queue_add_task()
|
D | iosm_ipc_protocol_ops.h | 14 * enum ipc_mem_td_cs - Completion status of a TD 33 * enum ipc_mem_msg_cs - Completion status of IPC Message 35 * @IPC_MEM_MSG_CS_SUCCESS: IPC Message completion success. 130 * @completion: For waking up requestor 131 * @status: Completion status 134 struct completion completion; member 142 * @IPC_MEM_MSG_ABORT_PIPE: AP ->CP: wait for completion of the 164 * @completion_status: Message Completion Status 184 * @completion_status: Message Completion Status 204 * @completion_status: Message Completion Status [all …]
|
/Linux-v5.15/drivers/net/wireless/intel/iwlwifi/ |
D | iwl-context-info-gen3.h | 45 * @IWL_PRPH_SCRATCH_MTR_MODE: format used for completion - 0: for 46 * completion descriptor, 1 for responses (legacy) 191 * @cr_head_idx_arr_base_addr: the completion ring head index array 195 * @cr_tail_idx_arr_base_addr: the completion ring tail index array 199 * @cr_idx_arr_size: number of entries in the completion ring index array 202 * @mcr_base_addr: the message completion ring start address 204 * @mcr_size: number of entries which the message completion ring can hold 208 * completion ring 212 * completing a completion descriptor in the message completion ring 217 * @mcr_opt_header_size: the size of the optional header in the completion [all …]
|
/Linux-v5.15/arch/powerpc/sysdev/ |
D | pmi.c | 16 #include <linux/completion.h> 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() 227 pr_debug("pmi_send_message: wait for completion\n"); 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.15/fs/nilfs2/ |
D | sysfs.h | 21 * @sg_superblock_kobj_unregister: completion state 23 * @sg_segctor_kobj_unregister: completion state 25 * @sg_mounted_snapshots_kobj_unregister: completion state 27 * @sg_checkpoints_kobj_unregister: completion state 29 * @sg_segments_kobj_unregister: completion state 34 struct completion sg_superblock_kobj_unregister; 38 struct completion sg_segctor_kobj_unregister; 42 struct completion sg_mounted_snapshots_kobj_unregister; 46 struct completion sg_checkpoints_kobj_unregister; 50 struct completion sg_segments_kobj_unregister;
|
/Linux-v5.15/tools/perf/pmu-events/arch/x86/icelakex/ |
D | memory.json | 164 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 174 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 180 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 190 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 196 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 206 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 212 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 222 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 228 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 238 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … [all …]
|
/Linux-v5.15/tools/perf/pmu-events/arch/x86/tigerlake/ |
D | memory.json | 25 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 35 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 41 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 51 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 57 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 67 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 73 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 83 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 89 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … 99 …Counts randomly selected loads when the latency from first dispatch to completion is greater than … [all …]
|
/Linux-v5.15/drivers/net/ethernet/google/gve/ |
D | gve_desc_dqo.h | 32 /* If set, will generate a descriptor completion for this descriptor. */ 37 /* The TX completion associated with this packet will contain this tag. 146 /* TX completion descriptor */ 149 * completion. 165 /* For packet completions, this is the completion tag set on the 174 #define GVE_COMPL_TYPE_DQO_PKT 0x2 /* Packet completion */ 175 #define GVE_COMPL_TYPE_DQO_DESC 0x4 /* Descriptor completion */ 176 #define GVE_COMPL_TYPE_DQO_MISS 0x1 /* Miss path completion */ 177 #define GVE_COMPL_TYPE_DQO_REINJECTION 0x3 /* Re-injection completion */ 181 __le16 buf_id; /* ID returned in Rx completion descriptor */
|
/Linux-v5.15/Documentation/devicetree/bindings/scsi/ |
D | hisilicon-sas.txt | 19 - queue-count : number of delivery and completion queues in the controller 21 - interrupts : For v1 hw: Interrupts for phys, completion queues, and fatal 24 - Completion queue interrupts 32 Completion queue interrupts : each completion queue has 1 38 For v2 hw: Interrupts for phys, Sata, and completion queues; 42 - Completion queue interrupts 49 Completion queue interrupts : each completion queue has 1
|
/Linux-v5.15/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.15/drivers/char/hw_random/ |
D | timeriomem-rng.c | 20 #include <linux/completion.h> 39 struct completion completion; member 55 * bail out. Otherwise, wait for the completion. If the new data has in timeriomem_rng_read() 56 * already been generated, the completion should already be available. in timeriomem_rng_read() 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.15/drivers/misc/habanalabs/common/ |
D | irq.c | 29 * @ptr: the current ci or pi value of the completion queue 31 * Increment ptr by 1. If it reaches the number of completion queue 70 * hl_irq_handler_cq - irq handler for completion queue 73 * @arg: pointer to completion queue structure 147 complete_all(&pend->fence.completion); in handle_user_cq() 152 * hl_irq_handler_user_cq - irq handler for user completion queues 164 "got user completion interrupt id %u", in hl_irq_handler_user_cq() 281 * @hw_queue_id: The H/W queue ID this completion queue belongs to 283 * Allocate dma-able memory for the completion queue and initialize fields 307 * hl_cq_fini - destroy completion queue [all …]
|
/Linux-v5.15/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.15/drivers/scsi/bnx2fc/ |
D | bnx2fc_constants.h | 45 /* KCQ (kernel completion queue) response op codes */ 56 /* KCQ (kernel completion queue) completion status */ 131 /* For completion the ABTS task. */ 136 /* Obsolete: Intermediate completion (middle path with local completion) */ 146 /* Special completion indication in case of task was aborted. */ 150 /* FW only: Special completion indication in case of task was cleaned. */ 152 /* Not in used: Special completion indication (in task requested the exchange 156 /* Special completion indication (in task requested the sequence cleanup) in
|
/Linux-v5.15/include/linux/sunrpc/ |
D | rpc_rdma_cid.h | 10 * The rpc_rdma_cid struct records completion ID information. A 11 * completion ID matches an incoming Send or Receive completion 12 * to a Completion Queue and to a previous ib_post_*(). The ID
|
/Linux-v5.15/drivers/scsi/qedf/ |
D | qedf_hsi.h | 112 * FCoE CQ element Target completion information 172 struct fcoe_cqe_rsp_info rsp_info /* Response completion information */; 173 /* Target completion information */ 175 /* Error completion information */ 177 struct fcoe_abts_info abts_info /* ABTS completion information */; 178 /* Middle path completion information */ 180 /* Unsolicited packet completion information */ 182 /* Warning completion information (Rec Tov expiration) */ 195 * The CQE type: 0x0 Indicating on a pending work request completion.
|
/Linux-v5.15/include/video/ |
D | imx-ipu-image-convert.h | 20 * @status: completion status of this run 90 * @complete: run completion callback 91 * @complete_context: a context pointer for the completion callback 113 * to this context are returned via the completion callback with an 132 * completion callback. The caller is responsible for freeing the run 148 * returned via the completion callback with an error run status. 160 * @complete: run completion callback 161 * @complete_context: a context pointer for the completion callback
|
/Linux-v5.15/tools/perf/pmu-events/arch/powerpc/power9/ |
D | metrics.json | 38 "BriefDescription": "Completion stall due to a Branch Unit", 74 "BriefDescription": "Completion stall by Dcache miss which resolved off node memory/cache", 80 …"BriefDescription": "Completion stall by Dcache miss which resolved on chip ( excluding local L2/L… 86 …"BriefDescription": "Completion stall due to cache miss that resolves in the L2 or L3 with a confl… 92 …"BriefDescription": "Completion stall due to cache miss that resolves in the L2 or L3 without conf… 98 "BriefDescription": "Completion stall by Dcache miss which resolved in L2/L3", 104 "BriefDescription": "Completion stall due to cache miss resolving missed the L3", 110 "BriefDescription": "Completion stall due to cache miss that resolves in local memory", 116 … "BriefDescription": "Completion stall by Dcache miss which resolved outside of local memory", 122 …"BriefDescription": "Completion stall by Dcache miss which resolved from remote chip (cache or mem… [all …]
|