Home
last modified time | relevance | path

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

12345678910>>...67

/kernel/linux/linux-5.10/include/linux/
Dww_mutex.h98 * ww_acquire_init - initialize a w/w acquire context
99 * @ctx: w/w acquire context to initialize
102 * Initializes an context to acquire multiple mutexes of the given w/w class.
114 * Nesting of acquire contexts for _different_ w/w classes is possible, subject
117 * An acquire context must be released with ww_acquire_fini by the same task
147 * ww_acquire_done - marks the end of the acquire phase
148 * @ctx: the acquire context
150 * Marks the end of the acquire phase, any further w/w mutex lock calls using
154 * code and clearly designated the acquire phase from actually using the locked
168 * 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
/kernel/linux/linux-4.19/include/linux/
Dww_mutex.h106 * ww_acquire_init - initialize a w/w acquire context
107 * @ctx: w/w acquire context to initialize
110 * Initializes an context to acquire multiple mutexes of the given w/w class.
122 * Nesting of acquire contexts for _different_ w/w classes is possible, subject
125 * An acquire context must be released with ww_acquire_fini by the same task
155 * ww_acquire_done - marks the end of the acquire phase
156 * @ctx: the acquire context
158 * Marks the end of the acquire phase, any further w/w mutex lock calls using
162 * code and clearly designated the acquire phase from actually using the locked
176 * ww_acquire_fini - releases a w/w acquire context
[all …]
/kernel/linux/linux-5.10/tools/memory-model/
Dlinux-kernel.def12 // Release Acquire and friends
14 smp_load_acquire(X) __load{acquire}(*X)
33 xchg_acquire(X,V) __xchg{acquire}(X,V)
36 cmpxchg_acquire(X,V,W) __cmpxchg{acquire}(X,V,W)
70 atomic_add_return_acquire(V,X) __atomic_op_return{acquire}(X,+,V)
74 atomic_fetch_add_acquire(V,X) __atomic_fetch_op{acquire}(X,+,V)
79 atomic_inc_return_acquire(X) __atomic_op_return{acquire}(X,+,1)
83 atomic_fetch_inc_acquire(X) __atomic_fetch_op{acquire}(X,+,1)
88 atomic_sub_return_acquire(V,X) __atomic_op_return{acquire}(X,-,V)
92 atomic_fetch_sub_acquire(V,X) __atomic_fetch_op{acquire}(X,-,V)
[all …]
/kernel/linux/linux-4.19/tools/memory-model/
Dlinux-kernel.def12 // Release Acquire and friends
14 smp_load_acquire(X) __load{acquire}(*X)
31 xchg_acquire(X,V) __xchg{acquire}(X,V)
34 cmpxchg_acquire(X,V,W) __cmpxchg{acquire}(X,V,W)
62 atomic_add_return_acquire(V,X) __atomic_op_return{acquire}(X,+,V)
66 atomic_fetch_add_acquire(V,X) __atomic_fetch_op{acquire}(X,+,V)
71 atomic_inc_return_acquire(X) __atomic_op_return{acquire}(X,+,1)
75 atomic_fetch_inc_acquire(X) __atomic_fetch_op{acquire}(X,+,1)
80 atomic_sub_return_acquire(V,X) __atomic_op_return{acquire}(X,-,V)
84 atomic_fetch_sub_acquire(V,X) __atomic_fetch_op{acquire}(X,-,V)
[all …]
/kernel/linux/linux-4.19/kernel/locking/
Dsemaphore.c24 * 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
68 * down_interruptible - acquire the semaphore unless interrupted
71 * Attempts to acquire the semaphore. If no more tasks are allowed to
72 * acquire the semaphore, calling this function will put the task to sleep.
93 * down_killable - acquire the semaphore unless killed
96 * Attempts to acquire the semaphore. If no more tasks are allowed to
97 * acquire the semaphore, calling this function will put the task to sleep.
119 * 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.c27 * queued_read_lock_slowpath - acquire read lock of a queue rwlock
39 * so spin with ACQUIRE semantics until the lock is available in queued_read_lock_slowpath()
54 * The ACQUIRE semantics of the following spinning code ensure in queued_read_lock_slowpath()
68 * queued_write_lock_slowpath - acquire write lock of a queue rwlock
76 /* Try to acquire the lock directly if no reader is present */ in queued_write_lock_slowpath()
/kernel/linux/linux-5.10/kernel/locking/
Dsemaphore.c23 * The ->count variable represents how many more tasks can acquire this
43 * down - acquire the semaphore
46 * Acquires the semaphore. If no more tasks are allowed to acquire the
67 * down_interruptible - acquire the semaphore unless interrupted
70 * Attempts to acquire the semaphore. If no more tasks are allowed to
71 * acquire the semaphore, calling this function will put the task to sleep.
92 * down_killable - acquire the semaphore unless killed
95 * Attempts to acquire the semaphore. If no more tasks are allowed to
96 * acquire the semaphore, calling this function will put the task to sleep.
118 * 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 queue rwlock
30 * so spin with ACQUIRE semantics until the lock is available in queued_read_lock_slowpath()
45 * The ACQUIRE semantics of the following spinning code ensure in queued_read_lock_slowpath()
59 * queued_write_lock_slowpath - acquire write lock of a queue rwlock
69 /* Try to acquire the lock directly if no reader is present */ in queued_write_lock_slowpath()
/kernel/linux/linux-4.19/tools/memory-model/litmus-tests/
DREADME44 and load-acquire replaced with READ_ONCE().
47 Can a release-acquire chain order a prior store against
56 Does a release-acquire pair suffice for the load-buffering
62 and load-acquire replaced with READ_ONCE().
69 in one process, and use an acquire load followed by a pair of
74 acquire load followed by a pair of spin_is_locked() calls
85 As below, but with a release-acquire chain.
124 As below, but without the smp_wmb() and acquire load.
127 Can a smp_wmb(), instead of a release, and an acquire order
147 Is the ordering provided by a release-acquire chain sufficient
[all …]
/kernel/linux/linux-5.10/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().
71 in one process, and use an acquire load followed by a pair of
76 acquire load followed by a pair of spin_is_locked() calls
87 As below, but with a release-acquire chain.
126 As below, but without the smp_wmb() and acquire load.
129 Can a smp_wmb(), instead of a release, and an acquire order
149 Is the ordering provided by a release-acquire chain sufficient
[all …]
/kernel/linux/linux-5.10/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
/kernel/linux/linux-4.19/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
/kernel/linux/linux-4.19/drivers/gpu/drm/
Ddrm_modeset_lock.c33 * to use &ww_mutex and acquire-contexts to avoid deadlocks. But because
35 * of extra utility/tracking out of our acquire-ctx. This is provided
185 * drm_modeset_acquire_init - initialize acquire context
186 * @ctx: the acquire context
206 * drm_modeset_acquire_fini - cleanup acquire context
207 * @ctx: the acquire context
217 * @ctx: the acquire context
219 * Drop all locks currently held against this acquire context.
279 * @ctx: the acquire context
318 * @ctx: acquire ctx
[all …]
/kernel/linux/linux-5.10/include/drm/
Ddrm_modeset_lock.h33 * @ww_ctx: base acquire ctx
39 * Each thread competing for a set of locks must use one acquire
143 * DRM_MODESET_LOCK_ALL_BEGIN - Helper to acquire modeset locks
145 * @ctx: local modeset acquire context, will be dereferenced
158 * Drivers can acquire additional modeset locks. If any lock acquisition
178 * @ctx: local modeset acquire context, will be dereferenced
189 * successfully acquire the locks, ret will be whatever your code sets it to. If
190 * there is a deadlock or other failure with acquire or backoff, ret will be set
/kernel/linux/linux-4.19/Documentation/driver-api/soundwire/
Dlocking.rst42 a. Acquire Message lock.
57 <-------------------------------+ a. Acquire Message lock
70 1. Acquire lock for Bus instance associated with Master 1.
74 a. Acquire Message lock.
91 <-------------------------------+ 1. Acquire bus lock
96 <-------------------------------+ a. Acquire Message lock
/kernel/linux/linux-5.10/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
/kernel/linux/linux-5.10/drivers/gpu/drm/
Ddrm_modeset_lock.c34 * to use &ww_mutex and acquire-contexts to avoid deadlocks. But because
36 * of extra utility/tracking out of our acquire-ctx. This is provided
190 * drm_modeset_acquire_init - initialize acquire context
191 * @ctx: the acquire context
211 * drm_modeset_acquire_fini - cleanup acquire context
212 * @ctx: the acquire context
222 * @ctx: the acquire context
224 * Drop all locks currently held against this acquire context.
284 * @ctx: the acquire context
323 * @ctx: acquire ctx
[all …]
/kernel/linux/linux-5.10/Documentation/locking/
Dww-mutex-design.rst63 Acquire context: To ensure eventual forward progress it is important the 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, uninterruptible::
121 Acquire the mutex, interruptible::
127 Acquire the mutex, interruptible, if dec to 0::
/kernel/linux/linux-4.19/Documentation/locking/
Dww-mutex-design.txt62 Acquire context: To ensure eventual forward progress it is important the a task
63 trying to acquire locks doesn't grab a new reservation id, but keeps the one it
65 acquire context. Furthermore the acquire context keeps track of debugging state
66 to catch w/w mutex interface abuse. An acquire context is representing a
70 w/w mutexes, since it is required to initialize the acquire context. The lock
73 Furthermore there are three different class of w/w lock acquire functions:
97 * Functions to only acquire a single w/w mutex, which results in the exact same
101 Again this is not strictly required. But often you only want to acquire a
102 single lock in which case it's pointless to set up an acquire context (and so
117 Three different ways to acquire locks within the same w/w class. Common
[all …]
/kernel/linux/linux-4.19/Documentation/
Dfutex-requeue-pi.txt91 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

12345678910>>...67