Home
last modified time | relevance | path

Searched +full:wait +full:- +full:state (Results 1 – 25 of 1096) sorted by relevance

12345678910>>...44

/linux-6.12.1/kernel/sched/
Dcompletion.c1 // SPDX-License-Identifier: GPL-2.0
4 * Generic wait-for-completion handler;
7 * wait_for_completion default blocks whereas semaphore default non-block. The
20 raw_spin_lock_irqsave(&x->wait.lock, flags); in complete_with_flags()
22 if (x->done != UINT_MAX) in complete_with_flags()
23 x->done++; in complete_with_flags()
24 swake_up_locked(&x->wait, wake_flags); in complete_with_flags()
25 raw_spin_unlock_irqrestore(&x->wait.lock, flags); in complete_with_flags()
34 * complete: - signals a single thread waiting on this completion
35 * @x: holds the state of this particular completion
[all …]
Dswait.c1 // SPDX-License-Identifier: GPL-2.0
3 * <linux/swait.h> (simple wait queues ) implementation:
9 raw_spin_lock_init(&q->lock); in __init_swait_queue_head()
10 lockdep_set_class_and_name(&q->lock, key, name); in __init_swait_queue_head()
11 INIT_LIST_HEAD(&q->task_list); in __init_swait_queue_head()
25 if (list_empty(&q->task_list)) in swake_up_locked()
28 curr = list_first_entry(&q->task_list, typeof(*curr), task_list); in swake_up_locked()
29 try_to_wake_up(curr->task, TASK_NORMAL, wake_flags); in swake_up_locked()
30 list_del_init(&curr->task_list); in swake_up_locked()
43 while (!list_empty(&q->task_list)) in swake_up_all_locked()
[all …]
Dwait.c1 // SPDX-License-Identifier: GPL-2.0-only
10 spin_lock_init(&wq_head->lock); in __init_waitqueue_head()
11 lockdep_set_class_and_name(&wq_head->lock, key, name); in __init_waitqueue_head()
12 INIT_LIST_HEAD(&wq_head->head); in __init_waitqueue_head()
21 wq_entry->flags &= ~WQ_FLAG_EXCLUSIVE; in add_wait_queue()
22 spin_lock_irqsave(&wq_head->lock, flags); in add_wait_queue()
24 spin_unlock_irqrestore(&wq_head->lock, flags); in add_wait_queue()
32 wq_entry->flags |= WQ_FLAG_EXCLUSIVE; in add_wait_queue_exclusive()
33 spin_lock_irqsave(&wq_head->lock, flags); in add_wait_queue_exclusive()
35 spin_unlock_irqrestore(&wq_head->lock, flags); in add_wait_queue_exclusive()
[all …]
/linux-6.12.1/fs/bcachefs/
Dsix.c1 // SPDX-License-Identifier: GPL-2.0
74 if ((atomic_read(&lock->state) & mask) != mask) in six_set_bitmask()
75 atomic_or(mask, &lock->state); in six_set_bitmask()
80 if (atomic_read(&lock->state) & mask) in six_clear_bitmask()
81 atomic_and(~mask, &lock->state); in six_clear_bitmask()
91 EBUG_ON(lock->owner); in six_set_owner()
92 lock->owner = owner; in six_set_owner()
94 EBUG_ON(lock->owner != current); in six_set_owner()
104 read_count += *per_cpu_ptr(lock->readers, cpu); in pcpu_read_count()
109 * __do_six_trylock() - main trylock routine
[all …]
Dsix.h1 /* SPDX-License-Identifier: GPL-2.0 */
10 * but with an additional state: read/shared, intent, exclusive/write
12 * The purpose of the intent state is to allow for greater concurrency on tree
17 * But by adding an intent state, which is exclusive with other intent locks but
23 * six_lock_read(&foo->lock);
24 * six_unlock_read(&foo->lock);
27 * six_lock_intent(&foo->lock);
28 * six_lock_write(&foo->lock);
29 * six_unlock_write(&foo->lock);
30 * six_unlock_intent(&foo->lock);
[all …]
/linux-6.12.1/drivers/gpu/drm/i915/display/
Dintel_display_rps.c1 // SPDX-License-Identifier: MIT
15 struct wait_queue_entry wait; member
24 struct wait_rps_boost *wait = container_of(_wait, typeof(*wait), wait); in do_rps_boost() local
25 struct i915_request *rq = wait->request; in do_rps_boost()
36 drm_crtc_vblank_put(wait->crtc); in do_rps_boost()
38 list_del(&wait->wait.entry); in do_rps_boost()
39 kfree(wait); in do_rps_boost()
46 struct wait_rps_boost *wait; in intel_display_rps_boost_after_vblank() local
51 if (DISPLAY_VER(to_i915(crtc->dev)) < 6) in intel_display_rps_boost_after_vblank()
57 wait = kmalloc(sizeof(*wait), GFP_KERNEL); in intel_display_rps_boost_after_vblank()
[all …]
Dhsw_ips.c1 // SPDX-License-Identifier: MIT
16 struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); in hsw_ips_enable()
17 struct drm_i915_private *i915 = to_i915(crtc->base.dev); in hsw_ips_enable()
20 if (!crtc_state->ips_enabled) in hsw_ips_enable()
24 * We can only enable IPS after we enable a plane and wait for a vblank in hsw_ips_enable()
26 * a vblank wait. in hsw_ips_enable()
28 drm_WARN_ON(&i915->drm, in hsw_ips_enable()
29 !(crtc_state->active_planes & ~BIT(PLANE_CURSOR))); in hsw_ips_enable()
33 if (i915->display.ips.false_color) in hsw_ips_enable()
37 drm_WARN_ON(&i915->drm, in hsw_ips_enable()
[all …]
/linux-6.12.1/include/linux/
Dwait.h1 /* SPDX-License-Identifier: GPL-2.0 */
5 * Linux wait queue related types and methods
26 * A single wait-queue entry structure:
82 wq_entry->flags = 0; in init_waitqueue_entry()
83 wq_entry->private = p; in init_waitqueue_entry()
84 wq_entry->func = default_wake_function; in init_waitqueue_entry()
90 wq_entry->flags = 0; in init_waitqueue_func_entry()
91 wq_entry->private = NULL; in init_waitqueue_func_entry()
92 wq_entry->func = func; in init_waitqueue_func_entry()
96 * waitqueue_active -- locklessly test for waiters on the queue
[all …]
Dswait.h1 /* SPDX-License-Identifier: GPL-2.0 */
8 #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
14 * for deterministic behaviour -- IOW it has strictly bounded IRQ and lock hold
24 * - mixing INTERRUPTIBLE and UNINTERRUPTIBLE sleeps on the same waitqueue;
26 * sleeper state.
28 * - the !exclusive mode; because that leads to O(n) wakeups, everything is
31 * - custom wake callback functions; because you cannot give any guarantees
35 * As a side effect of these; the data structures are slimmer albeit more ad-hoc.
[all …]
Dwait_bit.h1 /* SPDX-License-Identifier: GPL-2.0 */
6 * Linux wait-bit related types and methods:
8 #include <linux/wait.h>
55 * wait_on_bit - wait for a bit to be cleared
58 * @mode: the task state to sleep in
66 * Returned value will be zero if the bit was cleared, or non-zero
82 * wait_on_bit_io - wait for a bit to be cleared
85 * @mode: the task state to sleep in
87 * Use the standard hashed waitqueue table to wait for a bit
91 * Returned value will be zero if the bit was cleared, or non-zero
[all …]
/linux-6.12.1/drivers/mtd/chips/
Dcfi_cmdset_0020.c1 // SPDX-License-Identifier: GPL-2.0
9 * - completely revamped method functions so they are aware and
11 * - scalability vs code size is completely set at compile-time
13 * - optimized write buffer method
14 * 06/21/2002 Joern Engel <joern@wh.fh-wedel.de> and others
15 * - modified Intel Command Set 0x0001 to support ST Advanced Architecture
17 * - added a writev function
18 * 07/13/2005 Joern Engel <joern@wh.fh-wedel.de>
19 * - Plugged memory leak in cfi_staa_writev().
69 printk(" Feature/Command Support: %4.4X\n", extp->FeatureSupport); in cfi_tell_features()
[all …]
/linux-6.12.1/include/soc/qcom/
Dtcs.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2016-2019, The Linux Foundation. All rights reserved.
12 * rpmh_state: state for the request
14 * RPMH_SLEEP_STATE: State of the resource when the processor subsystem
17 * RPMH_WAKE_ONLY_STATE: Resume resource state to the value previously
19 * RPMH_ACTIVE_ONLY_STATE: Active or AMC mode requests. Resource state
32 * @data: the resource state request
33 * @wait: ensure that this command is complete before returning.
34 * Setting "wait" here only makes sense during rpmh_write_batch() for
35 * active-only transfers, this is because:
[all …]
/linux-6.12.1/drivers/scsi/isci/
Dphy.h7 * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved.
20 * Foundation, Inc., 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
26 * Copyright(c) 2008 - 2011 Intel Corporation. All rights reserved.
63 /* This is the timeout value for the SATA phy to wait for a SIGNATURE FIS
64 * before restarting the starting state machine. Technically, the old parallel
74 * notification from the hardware that we restart the hardware OOB state
80 * isci_phy - hba local phy infrastructure
83 * @phy_index: physical index relative to the controller (0-3)
162 * struct sci_phy_properties - This structure defines the properties common to
189 * struct sci_sas_phy_properties - This structure defines the properties,
[all …]
/linux-6.12.1/drivers/net/ethernet/sfc/falcon/
Dselftest.c1 // SPDX-License-Identifier: GPL-2.0-only
4 * Copyright 2005-2006 Fen Systems Ltd.
5 * Copyright 2006-2012 Solarflare Communications Inc.
26 * - All IRQs may be disabled on a CPU for a *long* time by e.g. a
28 * - The PREEMPT_RT patches mostly deal with this, but also allow a
38 * The self-test should stress every RSS vector, and unfortunately
42 char pad[2]; /* Ensures ip is 4-byte aligned */
65 [EF4_INT_MODE_MSIX] = "MSI-X",
70 STRING_TABLE_LOOKUP(efx->interrupt_mode, ef4_interrupt_mode)
73 * struct ef4_loopback_state - persistent state during a loopback selftest
[all …]
/linux-6.12.1/drivers/net/ethernet/sfc/siena/
Dselftest.c1 // SPDX-License-Identifier: GPL-2.0-only
4 * Copyright 2005-2006 Fen Systems Ltd.
5 * Copyright 2006-2012 Solarflare Communications Inc.
29 * - All IRQs may be disabled on a CPU for a *long* time by e.g. a
31 * - The PREEMPT_RT patches mostly deal with this, but also allow a
41 * The self-test should stress every RSS vector, and unfortunately
45 char pad[2]; /* Ensures ip is 4-byte aligned */
68 [EFX_INT_MODE_MSIX] = "MSI-X",
73 STRING_TABLE_LOOKUP(efx->interrupt_mode, efx_siena_interrupt_mode)
76 * struct efx_loopback_state - persistent state during a loopback selftest
[all …]
/linux-6.12.1/drivers/infiniband/hw/hfi1/
Dvnic_sdma.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
3 * Copyright(c) 2017 - 2018 Intel Corporation.
20 * struct vnic_txreq - VNIC transmit descriptor
42 struct hfi1_vnic_sdma *vnic_sdma = tx->sdma; in vnic_sdma_complete()
44 sdma_txclean(vnic_sdma->dd, txreq); in vnic_sdma_complete()
45 dev_kfree_skb_any(tx->skb); in vnic_sdma_complete()
46 kmem_cache_free(vnic_sdma->dd->vnic.txreq_cache, tx); in vnic_sdma_complete()
55 sde->dd, in build_vnic_ulp_payload()
56 &tx->txreq, in build_vnic_ulp_payload()
57 tx->skb->data, in build_vnic_ulp_payload()
[all …]
/linux-6.12.1/drivers/soc/qcom/
Dtrace-rpmh.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
13 #include "rpmh-internal.h"
22 __string(name, d->name)
30 __entry->m = m;
31 __entry->addr = r->cmds[0].addr;
32 __entry->data = r->cmds[0].data;
35 TP_printk("%s: ack: tcs-m: %d addr: %#x data: %#x",
36 __get_str(name), __entry->m, __entry->addr, __entry->data)
41 TP_PROTO(struct rsc_drv *d, int m, enum rpmh_state state, int n, u32 h,
[all …]
/linux-6.12.1/drivers/net/ethernet/sfc/
Dselftest.c1 // SPDX-License-Identifier: GPL-2.0-only
4 * Copyright 2005-2006 Fen Systems Ltd.
5 * Copyright 2006-2012 Solarflare Communications Inc.
29 * - All IRQs may be disabled on a CPU for a *long* time by e.g. a
31 * - The PREEMPT_RT patches mostly deal with this, but also allow a
41 * The self-test should stress every RSS vector.
44 char pad[2]; /* Ensures ip is 4-byte aligned */
67 [EFX_INT_MODE_MSIX] = "MSI-X",
72 STRING_TABLE_LOOKUP(efx->interrupt_mode, efx_interrupt_mode)
75 * struct efx_loopback_state - persistent state during a loopback selftest
[all …]
/linux-6.12.1/arch/powerpc/platforms/powernv/
Dopal-async.c1 // SPDX-License-Identifier: GPL-2.0-or-later
5 * Copyright 2013-2017 IBM Corp.
16 #include <linux/wait.h>
31 enum opal_async_token_state state; member
44 int i, token = -EBUSY; in __opal_async_get_token()
49 if (opal_async_tokens[i].state == ASYNC_TOKEN_UNALLOCATED) { in __opal_async_get_token()
50 opal_async_tokens[i].state = ASYNC_TOKEN_ALLOCATED; in __opal_async_get_token()
70 /* Wait until a token is available */ in opal_async_get_token_interruptible()
72 return -ERESTARTSYS; in opal_async_get_token_interruptible()
90 return -EINVAL; in __opal_async_release_token()
[all …]
/linux-6.12.1/kernel/locking/
Dqspinlock_paravirt.h1 /* SPDX-License-Identifier: GPL-2.0 */
16 * pv_wait(u8 *ptr, u8 val) -- suspends the vcpu if *ptr == val
17 * pv_kick(cpu) -- wakes a suspended vcpu
31 * mitigates the slight slowdown for non-overcommitted guest with this
32 * aggressive wait-early mechanism.
53 u8 state; member
63 * The pending bit is set by the queue head vCPU of the MCS wait queue in
67 * enter the MCS wait queue. So lock starvation shouldn't happen as long
72 * mode spinning on the lock unless the MCS wait queue is empty. In this
85 * present in the MCS wait queue but the pending bit isn't set. in pv_hybrid_queued_unfair_trylock()
[all …]
/linux-6.12.1/drivers/net/wwan/iosm/
Diosm_ipc_pm.h1 /* SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2020-21 Intel Corporation.
18 * union ipc_pm_cond - Conditions for D3 and the sleep message to CP.
22 * @link: Device link state.
35 * enum ipc_mem_host_pm_state - Possible states of the HOST SLEEP finite state
38 * @IPC_MEM_HOST_PM_ACTIVE_WAIT: Intermediate state before going to
40 * @IPC_MEM_HOST_PM_SLEEP_WAIT_IDLE: Intermediate state to wait for idle
42 * @IPC_MEM_HOST_PM_SLEEP_WAIT_D3: Intermediate state to wait for D3
44 * @IPC_MEM_HOST_PM_SLEEP: after this state the interface is not
46 * @IPC_MEM_HOST_PM_SLEEP_WAIT_EXIT_SLEEP: Intermediate state before exiting
[all …]
Diosm_ipc_imem_ops.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2020-21 Intel Corporation.
18 dev_dbg(ipc_imem->dev, "%s if id: %d", in ipc_imem_sys_wwan_open()
19 ipc_imem_phase_get_string(ipc_imem->phase), if_id); in ipc_imem_sys_wwan_open()
23 dev_err(ipc_imem->dev, "net:%d : refused phase %s", if_id, in ipc_imem_sys_wwan_open()
24 ipc_imem_phase_get_string(ipc_imem->phase)); in ipc_imem_sys_wwan_open()
25 return -EIO; in ipc_imem_sys_wwan_open()
28 return ipc_mux_open_session(ipc_imem->mux, if_id); in ipc_imem_sys_wwan_open()
35 if (ipc_imem->mux && if_id >= IP_MUX_SESSION_START && in ipc_imem_sys_wwan_close()
37 ipc_mux_close_session(ipc_imem->mux, if_id); in ipc_imem_sys_wwan_close()
[all …]
/linux-6.12.1/drivers/gpu/drm/amd/display/dmub/
Ddmub_srv.h36 * This interface is not thread-safe. Ensure that all access to the interface
58 * wait until the queue has been cleared.
61 * This does not clear DMUB hardware state, only software state.
79 /* enum dmub_window_memory_type - memory location type specification for windows */
85 /* enum dmub_status - return code for dmcub functions */
96 /* enum dmub_asic - dmub asic identifier */
118 /* enum dmub_window_id - dmub window identifier */
132 /* enum dmub_notification_type - dmub outbox notification identifier */
155 /* enum dmub_memory_access_type - memory access method */
162 /* enum dmub_power_state type - to track DC power state in dmub_srv */
[all …]
/linux-6.12.1/drivers/gpu/drm/renesas/rcar-du/
Drcar_du_crtc.h1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * R-Car Display Unit CRTCs
5 * Copyright (C) 2013-2015 Renesas Electronics Corporation
15 #include <linux/wait.h>
26 * struct rcar_du_crtc - the CRTC, representing a DU superposition processor
37 * @flip_wait: wait queue used to signal page flip completion
39 * @vblank_wait: wait queue used to signal vertical blanking
40 * @vblank_count: number of vertical blanking interrupts to wait for
82 * struct rcar_du_crtc_state - Driver-specific CRTC state
83 * @state: base DRM CRTC state
[all …]
/linux-6.12.1/drivers/staging/media/omap4iss/
Diss_ipipe.h1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * TI OMAP4 ISS V4L2 Driver - ISP IPIPE module
28 * struct iss_ipipe_device - Structure for the IPIPE module to store its own
36 * @state: Streaming state
37 * @wait: Wait queue used to stop the module
38 * @stopping: Stopping state
49 enum iss_pipeline_stream_state state; member
50 wait_queue_head_t wait; member

12345678910>>...44