Home
last modified time | relevance | path

Searched full:acquire (Results 1 – 25 of 1286) sorted by relevance

12345678910>>...52

/linux-6.12.1/include/linux/
Dww_mutex.h109 * ww_acquire_init - initialize a w/w acquire context
110 * @ctx: w/w acquire context to initialize
113 * Initializes an context to acquire multiple mutexes of the given w/w class.
125 * Nesting of acquire contexts for _different_ w/w classes is possible, subject
128 * An acquire context must be released with ww_acquire_fini by the same task
158 * ww_acquire_done - marks the end of the acquire phase
159 * @ctx: the acquire context
161 * Marks the end of the acquire phase, any further w/w mutex lock calls using
165 * code and clearly designated the acquire phase from actually using the locked
179 * ww_acquire_fini - releases a w/w acquire context
[all …]
Datomic.h16 * - Acquire: Provides ACQUIRE semantics, _acquire suffix.
20 * For compound atomics performing both a load and a store, ACQUIRE
25 * See Documentation/memory-barriers.txt for ACQUIRE/RELEASE definitions.
35 * The idea here is to build acquire/release variants by adding explicit
/linux-6.12.1/tools/memory-model/
Dlinux-kernel.def12 // Release Acquire and friends
14 smp_load_acquire(X) __load{acquire}(*X)
34 xchg_acquire(X,V) __xchg{acquire}(X,V)
37 cmpxchg_acquire(X,V,W) __cmpxchg{acquire}(X,V,W)
73 atomic_add_return_acquire(V,X) __atomic_op_return{acquire}(X,+,V)
77 atomic_fetch_add_acquire(V,X) __atomic_fetch_op{acquire}(X,+,V)
82 atomic_inc_return_acquire(X) __atomic_op_return{acquire}(X,+,1)
86 atomic_fetch_inc_acquire(X) __atomic_fetch_op{acquire}(X,+,1)
91 atomic_sub_return_acquire(V,X) __atomic_op_return{acquire}(X,-,V)
95 atomic_fetch_sub_acquire(V,X) __atomic_fetch_op{acquire}(X,-,V)
[all …]
/linux-6.12.1/kernel/locking/
Dsemaphore.c23 * The ->count variable represents how many more tasks can acquire this
44 * down - acquire the semaphore
47 * Acquires the semaphore. If no more tasks are allowed to acquire the
69 * down_interruptible - acquire the semaphore unless interrupted
72 * Attempts to acquire the semaphore. If no more tasks are allowed to
73 * acquire the semaphore, calling this function will put the task to sleep.
95 * down_killable - acquire the semaphore unless killed
98 * Attempts to acquire the semaphore. If no more tasks are allowed to
99 * acquire the semaphore, calling this function will put the task to sleep.
122 * down_trylock - try to acquire the semaphore, without waiting
[all …]
Dmcs_spinlock.h9 * to acquire the lock spinning on a local variable.
26 * Using smp_cond_load_acquire() provides the acquire semantics
58 * In order to acquire the lock, the caller should declare a local node and
76 * observation of @node. And to provide the ACQUIRE ordering associated in mcs_spin_lock()
84 * However, since this thread can immediately acquire the lock in mcs_spin_lock()
99 * was used to acquire the lock.
Dqrwlock.c18 * queued_read_lock_slowpath - acquire read lock of a queued rwlock
30 * so spin with ACQUIRE semantics until the lock is available in queued_read_lock_slowpath()
47 * The ACQUIRE semantics of the following spinning code ensure in queued_read_lock_slowpath()
63 * queued_write_lock_slowpath - acquire write lock of a queued rwlock
75 /* Try to acquire the lock directly if no reader is present */ in queued_write_lock_slowpath()
/linux-6.12.1/tools/memory-model/litmus-tests/
DREADME46 and load-acquire replaced with READ_ONCE().
49 Can a release-acquire chain order a prior store against
58 Does a release-acquire pair suffice for the load-buffering
64 and load-acquire replaced with READ_ONCE().
75 in one process, and use an acquire load followed by a pair of
80 acquire load followed by a pair of spin_is_locked() calls
91 As below, but with a release-acquire chain.
134 As below, but without the smp_wmb() and acquire load.
137 Can a smp_wmb(), instead of a release, and an acquire order
157 Is the ordering provided by a release-acquire chain sufficient
[all …]
/linux-6.12.1/Documentation/sound/cards/
Dimg-spdif-in.rst19 * name='SPDIF In Multi Frequency Acquire',index=0
20 * name='SPDIF In Multi Frequency Acquire',index=1
21 * name='SPDIF In Multi Frequency Acquire',index=2
22 * name='SPDIF In Multi Frequency Acquire',index=3
47 * name='SPDIF In Lock Acquire Threshold',index=0
/linux-6.12.1/include/drm/
Ddrm_modeset_lock.h35 * @ww_ctx: base acquire ctx
42 * Each thread competing for a set of locks must use one acquire
152 * DRM_MODESET_LOCK_ALL_BEGIN - Helper to acquire modeset locks
154 * @ctx: local modeset acquire context, will be dereferenced
167 * Drivers can acquire additional modeset locks. If any lock acquisition
187 * @ctx: local modeset acquire context, will be dereferenced
198 * successfully acquire the locks, ret will be whatever your code sets it to. If
199 * there is a deadlock or other failure with acquire or backoff, ret will be set
/linux-6.12.1/Documentation/driver-api/soundwire/
Dlocking.rst42 a. Acquire Message lock.
59 <-------------------------------+ a. Acquire Message lock
72 1. Acquire lock for Bus instance associated with Master 1.
76 a. Acquire Message lock.
93 <-------------------------------+ 1. Acquire bus lock
98 <-------------------------------+ a. Acquire Message lock
/linux-6.12.1/include/linux/atomic/
Datomic-instrumented.h37 * atomic_read_acquire() - atomic load with acquire ordering
40 * Atomically loads the value of @v with acquire ordering.
128 * atomic_add_return_acquire() - atomic add with acquire ordering
132 * Atomically updates @v to (@v + @i) with acquire ordering.
202 * atomic_fetch_add_acquire() - atomic add with acquire ordering
206 * Atomically updates @v to (@v + @i) with acquire ordering.
294 * atomic_sub_return_acquire() - atomic subtract with acquire ordering
298 * Atomically updates @v to (@v - @i) with acquire ordering.
368 * atomic_fetch_sub_acquire() - atomic subtract with acquire ordering
372 * Atomically updates @v to (@v - @i) with acquire ordering.
[all …]
Datomic-long.h45 * raw_atomic_long_read_acquire() - atomic load with acquire ordering
48 * Atomically loads the value of @v with acquire ordering.
149 * raw_atomic_long_add_return_acquire() - atomic add with acquire ordering
153 * Atomically updates @v to (@v + @i) with acquire ordering.
233 * raw_atomic_long_fetch_add_acquire() - atomic add with acquire ordering
237 * Atomically updates @v to (@v + @i) with acquire ordering.
338 * raw_atomic_long_sub_return_acquire() - atomic subtract with acquire ordering
342 * Atomically updates @v to (@v - @i) with acquire ordering.
422 * raw_atomic_long_fetch_sub_acquire() - atomic subtract with acquire ordering
426 * Atomically updates @v to (@v - @i) with acquire ordering.
[all …]
Datomic-arch-fallback.h461 * raw_atomic_read_acquire() - atomic load with acquire ordering
464 * Atomically loads the value of @v with acquire ordering.
577 * raw_atomic_add_return_acquire() - atomic add with acquire ordering
581 * Atomically updates @v to (@v + @i) with acquire ordering.
680 * raw_atomic_fetch_add_acquire() - atomic add with acquire ordering
684 * Atomically updates @v to (@v + @i) with acquire ordering.
800 * raw_atomic_sub_return_acquire() - atomic subtract with acquire ordering
804 * Atomically updates @v to (@v - @i) with acquire ordering.
903 * raw_atomic_fetch_sub_acquire() - atomic subtract with acquire ordering
907 * Atomically updates @v to (@v - @i) with acquire ordering.
[all …]
/linux-6.12.1/tools/memory-model/Documentation/
Dglossary.txt27 Acquire: With respect to a lock, acquiring that lock, for example,
31 An example special acquire operation is smp_load_acquire(),
33 acquire loads.
35 When an acquire load returns the value stored by a release store
36 to that same variable, (in other words, the acquire load "reads
38 store "happen before" any operations following that load acquire.
163 See also "Acquire" and "Release".
173 See also "Acquire" and "Relaxed".
/linux-6.12.1/Documentation/locking/
Dww-mutex-design.rst63 Acquire context: To ensure eventual forward progress it is important that a task
64 trying to acquire locks doesn't grab a new reservation id, but keeps the one it
66 acquire context. Furthermore the acquire context keeps track of debugging state
67 to catch w/w mutex interface abuse. An acquire context is representing a
71 w/w mutexes, since it is required to initialize the acquire context. The lock
74 Furthermore there are three different class of w/w lock acquire functions:
99 * Functions to only acquire a single w/w mutex, which results in the exact same
103 Again this is not strictly required. But often you only want to acquire a
104 single lock in which case it's pointless to set up an acquire context (and so
119 Three different ways to acquire locks within the same w/w class. Common
[all …]
Dfutex-requeue-pi.rst91 to be able to acquire the rt_mutex before returning to user space.
93 acquire the rt_mutex as it would open a race window between the
99 allow the requeue code to acquire an uncontended rt_mutex on behalf
115 requeueing, futex_requeue() attempts to acquire the requeue target
127 tasks as it can acquire the lock for, which in the majority of cases
129 either pthread_cond_broadcast() or pthread_cond_signal() acquire the
Dmutex-design.rst40 (i) fastpath: tries to atomically acquire the lock by cmpxchg()ing the owner with
54 to acquire the lock spinning on a local variable. It avoids expensive
97 - Point-of-acquire tracking, symbolic lookup of function names,
115 acquire the mutex and assume that the mutex_unlock() context is not using
133 Acquire the mutex, uninterruptible::
139 Acquire the mutex, interruptible::
145 Acquire the mutex, interruptible, if dec to 0::
/linux-6.12.1/drivers/gpu/drm/
Ddrm_modeset_lock.c35 * to use &ww_mutex and acquire-contexts to avoid deadlocks. But because
37 * of extra utility/tracking out of our acquire-ctx. This is provided
238 * drm_modeset_acquire_init - initialize acquire context
239 * @ctx: the acquire context
259 * drm_modeset_acquire_fini - cleanup acquire context
260 * @ctx: the acquire context
270 * @ctx: the acquire context
272 * Drop all locks currently held against this acquire context.
336 * @ctx: the acquire context
377 * @ctx: acquire ctx
[all …]
/linux-6.12.1/tools/perf/util/
Dlock-contention.h51 * UNINITIALIZED is required for detecting first event of acquire.
53 * that the first event for the locks are acquire,
78 * 1) acquire -> acquired -> release
79 * 2) acquire -> contended -> acquired -> release
80 * 3) acquire (with read or try) -> release
/linux-6.12.1/drivers/net/ethernet/intel/igc/
Digc_i225.c10 * igc_acquire_nvm_i225 - Acquire exclusive access to EEPROM
13 * Acquire the necessary semaphores for exclusive access to the EEPROM.
36 * igc_get_hw_semaphore_i225 - Acquire hardware semaphore
39 * Acquire the HW semaphore to access the PHY or NVM
103 * igc_acquire_swfw_sync_i225 - Acquire SW/FW semaphore
105 * @mask: specifies which semaphore to acquire
107 * Acquire the SW/FW semaphore to access the PHY or NVM. The mask
151 * @mask: specifies which semaphore to acquire
201 status = hw->nvm.ops.acquire(hw); in igc_read_nvm_srrd_i225()
299 status = hw->nvm.ops.acquire(hw); in igc_write_nvm_srwr_i225()
[all …]
/linux-6.12.1/tools/perf/pmu-events/arch/powerpc/power10/
Dlocks.json5 …onditional store instruction (STCX) failed. LARX and STCX are instructions used to acquire a lock."
10 …ditional store instruction (STCX) finished. LARX and STCX are instructions used to acquire a lock."
15 …onditional store instruction (STCX) passed. LARX and STCX are instructions used to acquire a lock."
/linux-6.12.1/kernel/printk/
Dnbcon.c43 * The acquire mechanism uses a few more fields:
59 * The acquire mechanism uses three approaches:
61 * 1) Direct acquire when the console is not owned or is owned by a lower
97 * The acquire/release functions implement only minimal policies:
111 * acquire()
193 * @ctxt: Pointer to an acquire context that contains
194 * all information about the acquire mode
216 * nbcon_context_try_acquire_direct - Try to acquire directly
220 * Acquire the console when it is released. Also acquire the console when
230 * priority. No acquire method can be successful in
[all …]
/linux-6.12.1/Documentation/translations/ko_KR/
Dmemory-barriers.txt104 - Acquire vs 메모리 액세스.
493 (5) ACQUIRE 오퍼레이션.
495 이 타입의 오퍼레이션은 단방향의 투과성 배리어처럼 동작합니다. ACQUIRE
496 오퍼레이션 뒤의 모든 메모리 오퍼레이션들이 ACQUIRE 오퍼레이션 후에
499 ACQUIRE 오퍼레이션에 포함됩니다.
501 ACQUIRE 오퍼레이션 앞의 메모리 오퍼레이션들은 ACQUIRE 오퍼레이션 완료 후에
504 ACQUIRE 오퍼레이션은 거의 항상 RELEASE 오퍼레이션과 짝을 지어 사용되어야
519 ACQUIRE 와 RELEASE 오퍼레이션의 사용은 일반적으로 다른 메모리 배리어의
520 필요성을 없앱니다. 또한, RELEASE+ACQUIRE 조합은 범용 메모리 배리어처럼
523 뒤이어 같은 변수에 대해 수행된 ACQUIRE 오퍼레이션을 뒤따르는 메모리
[all …]
/linux-6.12.1/drivers/remoteproc/
Dqcom_q6v5.c269 dev_err(&pdev->dev, "failed to acquire wdog IRQ\n"); in qcom_q6v5_init()
282 dev_err(&pdev->dev, "failed to acquire fatal IRQ\n"); in qcom_q6v5_init()
295 dev_err(&pdev->dev, "failed to acquire ready IRQ\n"); in qcom_q6v5_init()
308 dev_err(&pdev->dev, "failed to acquire handover IRQ\n"); in qcom_q6v5_init()
322 dev_err(&pdev->dev, "failed to acquire stop-ack IRQ\n"); in qcom_q6v5_init()
328 dev_err(&pdev->dev, "failed to acquire stop state\n"); in qcom_q6v5_init()
337 "failed to acquire load state\n"); in qcom_q6v5_init()
350 "failed to acquire interconnect path\n"); in qcom_q6v5_init()
/linux-6.12.1/tools/perf/pmu-events/arch/x86/jaketown/
Duncore-io.json17 … use. Transactions from the BL ring going into the IIO Agent must first acquire a credit. These …
27 … use. Transactions from the BL ring going into the IIO Agent must first acquire a credit. These …
37 … use. Transactions from the BL ring going into the IIO Agent must first acquire a credit. These …
42 "BriefDescription": "R2PCIe IIO Failed to Acquire a Credit; DRS",
47 …he number of times that a request pending in the BL Ingress attempted to acquire either a NCB or N…
52 "BriefDescription": "R2PCIe IIO Failed to Acquire a Credit; NCB",
57 …he number of times that a request pending in the BL Ingress attempted to acquire either a NCB or N…
62 "BriefDescription": "R2PCIe IIO Failed to Acquire a Credit; NCS",
67 …he number of times that a request pending in the BL Ingress attempted to acquire either a NCB or N…
77 … use. Transactions from the BL ring going into the IIO Agent must first acquire a credit. These …
[all …]

12345678910>>...52