Home
last modified time | relevance | path

Searched full:wait (Results 1 – 25 of 4425) sorted by relevance

12345678910>>...177

/Linux-v5.10/drivers/infiniband/hw/hfi1/
Diowait.h52 #include <linux/wait.h>
98 * @list: used to add/insert into QP/PQ wait lists
104 * @lock: lock protected head of wait queue
106 * @wait_dma: wait for sdma_busy == 0
107 * @wait_pio: wait for pio_busy == 0
112 * @flags: wait flags (one per QP)
113 * @wait: SE array for multiple legs
143 struct iowait_work *wait,
148 void (*wakeup)(struct iowait *wait, int reason);
149 void (*sdma_drained)(struct iowait *wait);
[all …]
Diowait.c12 void iowait_set_flag(struct iowait *wait, u32 flag) in iowait_set_flag() argument
14 trace_hfi1_iowait_set(wait, flag); in iowait_set_flag()
15 set_bit(flag, &wait->flags); in iowait_set_flag()
18 bool iowait_flag_set(struct iowait *wait, u32 flag) in iowait_flag_set() argument
20 return test_bit(flag, &wait->flags); in iowait_flag_set()
23 inline void iowait_clear_flag(struct iowait *wait, u32 flag) in iowait_clear_flag() argument
25 trace_hfi1_iowait_clear(wait, flag); in iowait_clear_flag()
26 clear_bit(flag, &wait->flags); in iowait_clear_flag()
30 * iowait_init() - initialize wait structure
31 * @wait: wait struct to initialize
[all …]
Dtrace_iowait.h17 TP_PROTO(struct iowait *wait, u32 flag),
18 TP_ARGS(wait, flag),
26 __entry->addr = (unsigned long)wait;
27 __entry->flags = wait->flags;
29 __entry->qpn = iowait_to_qp(wait)->ibqp.qp_num;
41 TP_PROTO(struct iowait *wait, u32 flag),
42 TP_ARGS(wait, flag));
45 TP_PROTO(struct iowait *wait, u32 flag),
46 TP_ARGS(wait, flag));
/Linux-v5.10/drivers/gpu/drm/nouveau/nvif/
Dtimer.c26 nvif_timer_wait_test(struct nvif_timer_wait *wait) in nvif_timer_wait_test() argument
28 u64 time = nvif_device_time(wait->device); in nvif_timer_wait_test()
30 if (wait->reads == 0) { in nvif_timer_wait_test()
31 wait->time0 = time; in nvif_timer_wait_test()
32 wait->time1 = time; in nvif_timer_wait_test()
35 if (wait->time1 == time) { in nvif_timer_wait_test()
36 if (WARN_ON(wait->reads++ == 16)) in nvif_timer_wait_test()
39 wait->time1 = time; in nvif_timer_wait_test()
40 wait->reads = 1; in nvif_timer_wait_test()
43 if (wait->time1 - wait->time0 > wait->limit) in nvif_timer_wait_test()
[all …]
/Linux-v5.10/include/linux/
Dwait.h5 * Linux wait queue related types and methods
12 #include <uapi/linux/wait.h>
27 * A single wait-queue entry structure:
100 * returns true if the wait list is not empty
111 * @cond = true; prepare_to_wait(&wq_head, &wait, state);
117 * finish_wait(&wq_head, &wait);
121 * observe an empty wait list while the waiter might not observe @cond.
133 * @wq_head: wait queue head
146 * @wq_head: wait queue head
156 * add_wait_queue modifications to the wait queue. in wq_has_sleeper()
[all …]
Dswait.h8 #include <linux/wait.h>
12 * Simple waitqueues are semantically very different to regular wait queues
13 * (wait.h). The most important difference is that the simple waitqueue allows
36 * For all the above, note that simple wait queues should _only_ be used under
38 * wait queues in most cases.
92 * returns true if the wait list is not empty
105 * @cond = true; prepare_to_swait_exclusive(&wq_head, &wait, state);
111 * finish_swait(&wq_head, &wait);
115 * observe an empty wait list while the waiter might not observe @cond.
138 * modifications to the wait queue (task_list). in swq_has_sleeper()
[all …]
Dumh.h14 #define UMH_NO_WAIT 0 /* don't wait at all */
15 #define UMH_WAIT_EXEC 1 /* wait for the exec, but not the process */
16 #define UMH_WAIT_PROC 2 /* wait for the process to complete */
17 #define UMH_KILLABLE 4 /* wait for EXEC/PROC killable */
25 int wait; member
33 call_usermodehelper(const char *path, char **argv, char **envp, int wait);
42 call_usermodehelper_exec(struct subprocess_info *info, int wait);
Dsmp.h52 int wait);
57 void on_each_cpu(smp_call_func_t func, void *info, int wait);
64 void *info, bool wait);
72 void *info, bool wait);
75 void *info, bool wait, const struct cpumask *mask);
121 void smp_call_function(smp_call_func_t func, void *info, int wait);
123 smp_call_func_t func, void *info, bool wait);
126 smp_call_func_t func, void *info, int wait);
167 #define smp_call_function(func, info, wait) \ argument
172 #define smp_call_function_many(mask, func, info, wait) \ argument
[all …]
/Linux-v5.10/drivers/net/ethernet/cisco/enic/
Dvnic_dev.c230 int wait) in _vnic_dev_cmd() argument
259 for (delay = 0; delay < wait; delay++) { in _vnic_dev_cmd()
298 int wait) in _vnic_dev_cmd2() argument
349 for (delay = 0; delay < wait; delay++) { in _vnic_dev_cmd2()
457 u64 *a0, u64 *a1, int wait) in vnic_dev_cmd_proxy() argument
469 err = vdev->devcmd_rtn(vdev, proxy_cmd, wait); in vnic_dev_cmd_proxy()
490 enum vnic_devcmd_cmd cmd, u64 *a0, u64 *a1, int wait) in vnic_dev_cmd_no_proxy() argument
497 err = vdev->devcmd_rtn(vdev, cmd, wait); in vnic_dev_cmd_no_proxy()
518 u64 *a0, u64 *a1, int wait) in vnic_dev_cmd() argument
525 a0, a1, wait); in vnic_dev_cmd()
[all …]
/Linux-v5.10/fs/
Dfs_pin.c16 spin_lock_irq(&pin->wait.lock); in pin_remove()
18 wake_up_locked(&pin->wait); in pin_remove()
19 spin_unlock_irq(&pin->wait.lock); in pin_remove()
32 wait_queue_entry_t wait; in pin_kill() local
38 init_wait(&wait); in pin_kill()
39 spin_lock_irq(&p->wait.lock); in pin_kill()
42 spin_unlock_irq(&p->wait.lock); in pin_kill()
48 spin_unlock_irq(&p->wait.lock); in pin_kill()
52 __add_wait_queue(&p->wait, &wait); in pin_kill()
55 spin_unlock_irq(&p->wait.lock); in pin_kill()
[all …]
/Linux-v5.10/arch/mips/kernel/
Didle.c3 * MIPS idle loop and WAIT instruction support.
23 * Not all of the MIPS CPUs have the "wait" instruction available. Moreover,
24 * the implementation of the "wait" feature differs between CPU families. This
25 * points to the function that implements CPU specific wait.
26 * The wait instruction stops the pipeline and reduces the power consumption of
65 " wait \n" in r4k_wait_irqoff()
72 * have any pending stores when the WAIT instruction is executed.
84 " wait \n" in rm7k_wait_irqoff()
91 * Au1 'wait' is only useful when the 32kHz counter is used as timer,
106 " wait \n" in au1k_wait()
[all …]
/Linux-v5.10/kernel/sched/
Dswait.c3 * <linux/swait.h> (simple wait queues ) implementation:
85 void __prepare_to_swait(struct swait_queue_head *q, struct swait_queue *wait) in __prepare_to_swait() argument
87 wait->task = current; in __prepare_to_swait()
88 if (list_empty(&wait->task_list)) in __prepare_to_swait()
89 list_add_tail(&wait->task_list, &q->task_list); in __prepare_to_swait()
92 void prepare_to_swait_exclusive(struct swait_queue_head *q, struct swait_queue *wait, int state) in prepare_to_swait_exclusive() argument
97 __prepare_to_swait(q, wait); in prepare_to_swait_exclusive()
103 long prepare_to_swait_event(struct swait_queue_head *q, struct swait_queue *wait, int state) in prepare_to_swait_event() argument
114 list_del_init(&wait->task_list); in prepare_to_swait_event()
117 __prepare_to_swait(q, wait); in prepare_to_swait_event()
[all …]
Dcompletion.c3 * Generic wait-for-completion handler;
32 raw_spin_lock_irqsave(&x->wait.lock, flags); in complete()
36 swake_up_locked(&x->wait); in complete()
37 raw_spin_unlock_irqrestore(&x->wait.lock, flags); in complete()
63 raw_spin_lock_irqsave(&x->wait.lock, flags); in complete_all()
65 swake_up_all_locked(&x->wait); in complete_all()
66 raw_spin_unlock_irqrestore(&x->wait.lock, flags); in complete_all()
75 DECLARE_SWAITQUEUE(wait); in do_wait_for_common()
82 __prepare_to_swait(&x->wait, &wait); in do_wait_for_common()
84 raw_spin_unlock_irq(&x->wait.lock); in do_wait_for_common()
[all …]
/Linux-v5.10/drivers/gpu/drm/nouveau/nvkm/subdev/timer/
Dbase.c27 nvkm_timer_wait_test(struct nvkm_timer_wait *wait) in nvkm_timer_wait_test() argument
29 struct nvkm_subdev *subdev = &wait->tmr->subdev; in nvkm_timer_wait_test()
30 u64 time = nvkm_timer_read(wait->tmr); in nvkm_timer_wait_test()
32 if (wait->reads == 0) { in nvkm_timer_wait_test()
33 wait->time0 = time; in nvkm_timer_wait_test()
34 wait->time1 = time; in nvkm_timer_wait_test()
37 if (wait->time1 == time) { in nvkm_timer_wait_test()
38 if (wait->reads++ == 16) { in nvkm_timer_wait_test()
43 wait->time1 = time; in nvkm_timer_wait_test()
44 wait->reads = 1; in nvkm_timer_wait_test()
[all …]
/Linux-v5.10/net/core/
Dstream.c21 #include <linux/wait.h>
41 wake_up_interruptible_poll(&wq->wait, EPOLLOUT | in sk_stream_write_space()
50 * sk_stream_wait_connect - Wait for a socket to get into the connected state
51 * @sk: sock to wait on
52 * @timeo_p: for how long to wait
58 DEFINE_WAIT_FUNC(wait, woken_wake_function); in sk_stream_wait_connect()
73 add_wait_queue(sk_sleep(sk), &wait); in sk_stream_wait_connect()
78 ~(TCPF_ESTABLISHED | TCPF_CLOSE_WAIT)), &wait); in sk_stream_wait_connect()
79 remove_wait_queue(sk_sleep(sk), &wait); in sk_stream_wait_connect()
99 DEFINE_WAIT_FUNC(wait, woken_wake_function); in sk_stream_wait_close()
[all …]
/Linux-v5.10/drivers/gpu/drm/omapdrm/
Domap_irq.c22 struct omap_irq_wait *wait; in omap_irq_update() local
27 list_for_each_entry(wait, &priv->wait_list, node) in omap_irq_update()
28 irqmask |= wait->irqmask; in omap_irq_update()
35 static void omap_irq_wait_handler(struct omap_irq_wait *wait) in omap_irq_wait_handler() argument
37 wait->count--; in omap_irq_wait_handler()
38 wake_up(&wait->wq); in omap_irq_wait_handler()
45 struct omap_irq_wait *wait = kzalloc(sizeof(*wait), GFP_KERNEL); in omap_irq_wait_init() local
48 init_waitqueue_head(&wait->wq); in omap_irq_wait_init()
49 wait->irqmask = irqmask; in omap_irq_wait_init()
50 wait->count = count; in omap_irq_wait_init()
[all …]
/Linux-v5.10/drivers/scsi/fnic/
Dvnic_dev.c74 int wait);
257 static int vnic_dev_cmd1(struct vnic_dev *vdev, enum vnic_devcmd_cmd cmd, int wait) in vnic_dev_cmd1() argument
291 for (delay = 0; delay < wait; delay++) { in vnic_dev_cmd1()
320 int wait) in vnic_dev_cmd2() argument
387 for (delay = 0; delay < wait; delay++) { in vnic_dev_cmd2()
507 enum vnic_devcmd_cmd cmd, u64 *a0, u64 *a1, int wait) in vnic_dev_cmd_no_proxy() argument
514 err = (*vdev->devcmd_rtn)(vdev, cmd, wait); in vnic_dev_cmd_no_proxy()
524 u64 *a0, u64 *a1, int wait) in vnic_dev_cmd() argument
531 return vnic_dev_cmd_no_proxy(vdev, cmd, a0, a1, wait); in vnic_dev_cmd()
540 int wait = 1000; in vnic_dev_fw_info() local
[all …]
/Linux-v5.10/kernel/
Dumh.c119 if (!(sub_info->wait & UMH_WAIT_PROC)) in call_usermodehelper_exec_async()
163 if (sub_info->wait & UMH_WAIT_PROC) { in call_usermodehelper_exec_work()
193 * Wait queue head used by usermodehelper_disable() to wait for all running
199 * Used by usermodehelper_read_lock_wait() to wait for usermodehelper_disabled
205 * Time to wait for running_helpers to become zero before the setting of
212 DEFINE_WAIT(wait); in usermodehelper_read_trylock()
217 prepare_to_wait(&usermodehelper_disabled_waitq, &wait, in usermodehelper_read_trylock()
235 finish_wait(&usermodehelper_disabled_waitq, &wait); in usermodehelper_read_trylock()
242 DEFINE_WAIT(wait); in usermodehelper_read_lock_wait()
249 prepare_to_wait(&usermodehelper_disabled_waitq, &wait, in usermodehelper_read_lock_wait()
[all …]
Dsmp.c382 /* Do we wait until *after* callback? */ in flush_smp_call_function_queue()
459 * @wait: If true, wait until function has completed on other CPUs.
464 int wait) in smp_call_function_single() argument
489 * When @wait we can deadlock when we interrupt between llist_add() and in smp_call_function_single()
490 * arch_send_call_function_ipi*(); when !@wait we can deadlock due to in smp_call_function_single()
497 if (!wait) { in smp_call_function_single()
511 if (wait) in smp_call_function_single()
569 * @wait: If true, wait until function has completed.
579 smp_call_func_t func, void *info, int wait) in smp_call_function_any() argument
601 ret = smp_call_function_single(cpu, func, info, wait); in smp_call_function_any()
[all …]
/Linux-v5.10/fs/f2fs/
Dgc.h16 #define DEF_GC_THREAD_NOGC_SLEEP_TIME 300000 /* wait 5 min */
130 unsigned int *wait) in increase_sleep_time() argument
135 if (*wait == gc_th->no_gc_sleep_time) in increase_sleep_time()
138 if ((long long)*wait + (long long)min_time > (long long)max_time) in increase_sleep_time()
139 *wait = max_time; in increase_sleep_time()
141 *wait += min_time; in increase_sleep_time()
145 unsigned int *wait) in decrease_sleep_time() argument
149 if (*wait == gc_th->no_gc_sleep_time) in decrease_sleep_time()
150 *wait = gc_th->max_sleep_time; in decrease_sleep_time()
152 if ((long long)*wait - (long long)min_time < (long long)min_time) in decrease_sleep_time()
[all …]
/Linux-v5.10/net/atm/
Dsvc.c13 #include <linux/wait.h>
48 DEFINE_WAIT(wait); in svc_disconnect()
56 prepare_to_wait(sk_sleep(sk), &wait, TASK_UNINTERRUPTIBLE); in svc_disconnect()
61 finish_wait(sk_sleep(sk), &wait); in svc_disconnect()
98 DEFINE_WAIT(wait); in svc_bind()
132 prepare_to_wait(sk_sleep(sk), &wait, TASK_UNINTERRUPTIBLE); in svc_bind()
137 finish_wait(sk_sleep(sk), &wait); in svc_bind()
154 DEFINE_WAIT(wait); in svc_connect()
214 prepare_to_wait(sk_sleep(sk), &wait, TASK_INTERRUPTIBLE); in svc_connect()
218 prepare_to_wait(sk_sleep(sk), &wait, in svc_connect()
[all …]
/Linux-v5.10/include/linux/mailbox/
Dmtk-cmdq-mailbox.h26 * bit 0-11: wait value
27 * bit 15: 1 - wait, 0 - no wait
47 * wait for event and clear
48 * it is just clear if no wait
49 * format: [wait] op event update:1 to_wait:1 wait:1
50 * [clear] op event update:1 to_wait:0 wait:0
/Linux-v5.10/Documentation/locking/
Dww-mutex-design.rst2 Wound/Wait Deadlock-Proof Mutex Design
5 Please read mutex-design.txt first, as it applies to wait/wound mutexes too.
14 a handful of situations where the driver needs to wait for buffers to
37 and the deadlock handling approach is called Wait-Die. The name is based on
41 and dies. Hence Wait-Die.
42 There is also another algorithm called Wound-Wait:
46 transaction. Hence Wound-Wait.
48 However, the Wound-Wait algorithm is typically stated to generate fewer backoffs
49 compared to Wait-Die, but is, on the other hand, associated with more work than
50 Wait-Die when recovering from a backoff. Wound-Wait is also a preemptive
[all …]
/Linux-v5.10/drivers/scsi/snic/
Dvnic_dev.c69 int wait);
262 int wait) in _svnic_dev_cmd2() argument
329 for (delay = 0; delay < wait; delay++) { in _svnic_dev_cmd2()
448 u64 *a0, u64 *a1, int wait) in svnic_dev_cmd() argument
456 err = (*vdev->devcmd_rtn)(vdev, cmd, wait); in svnic_dev_cmd()
468 int wait = VNIC_DVCMD_TMO; in svnic_dev_fw_info() local
481 err = svnic_dev_cmd(vdev, CMD_MCPU_FW_INFO, &a0, &a1, wait); in svnic_dev_fw_info()
493 int wait = VNIC_DVCMD_TMO; in svnic_dev_spec() local
499 err = svnic_dev_cmd(vdev, CMD_DEV_SPEC, &a0, &a1, wait); in svnic_dev_spec()
525 int wait = VNIC_DVCMD_TMO; in svnic_dev_stats_clear() local
[all …]
/Linux-v5.10/drivers/gpu/drm/
Ddrm_syncobj.c3 * Parts ported from amdgpu (fence wait code).
44 * - Wait for a syncobj's fence to appear and be signaled
51 * - Wait for a given point to appear and/or be signaled
107 * Host-side wait on syncobjs
111 * host-side wait on all of the syncobj fences simultaneously.
112 * If &DRM_SYNCOBJ_WAIT_FLAGS_WAIT_ALL is set, the wait ioctl will wait on
119 * the host-side wait will first wait for the syncobj to receive a non-NULL
120 * fence and then wait on that fence.
124 * to do a host wait in one thread (or process) which waits on GPU work
130 * handles as well as an array of u64 points and does a host-side wait on all
[all …]

12345678910>>...177