Home
last modified time | relevance | path

Searched full:mutexes (Results 1 – 25 of 73) sorted by relevance

123

/linux/Documentation/locking/
H A Dmutex-design.rst9 What are mutexes?
12 In the Linux kernel, mutexes refer to a particular locking primitive
15 or similar theoretical text books. Mutexes are sleeping locks which
26 Mutexes are represented by 'struct mutex', defined in include/linux/mutex.h
69 While formally kernel mutexes are sleepable locks, it is path (ii) that
87 - Held mutexes must not be reinitialized.
88 - Mutexes may not be used in hardware or software interrupt
95 - Uses symbolic names of mutexes, whenever they are printed
104 Mutexes - and most other sleeping locks like rwsems - do not provide an
165 When to use mutexes
[all …]
H A Dww-mutex-design.rst5 Please read mutex-design.rst first, as it applies to wait/wound mutexes too.
7 Motivation for WW-Mutexes
60 Compared to normal mutexes two additional concepts/objects show up in the lock
61 interface for w/w mutexes:
70 W/w class: In contrast to normal mutexes the lock class needs to be explicit for
71 w/w mutexes, since it is required to initialize the acquire context. The lock
238 mutexes are a natural fit for such a case for two reasons:
340 increase in code size if wait/wound mutexes are not used.
373 - Attempting to lock more mutexes after ww_acquire_done.
375 unlocking all mutexes.
[all …]
H A Drt-mutex.rst5 RT-mutexes with priority inheritance are used to support PI-futexes,
16 RT-mutexes extend the semantics of simple mutexes by the priority
27 mutexes which protect shared resources. Priority inheritance is not a
40 RT-mutexes are optimized for fastpath operations and have no internal
H A Drt-mutex-design.rst120 - The highest priority process waiting on one of the mutexes
131 The PI chain is a list of processes and mutexes that may cause priority
139 Mutexes: L1, L2, L3, L4
177 have multiple chains merge at mutexes. If we add another process G that is
209 a tree of all top waiters of the mutexes that are owned by the process.
211 blocked on mutexes owned by the process.
229 the nesting of mutexes. Let's look at the example where we have 3 mutexes,
293 Now since mutexes can be defined by user-land applications, we don't want a DOS
294 type of application that nests large amounts of mutexes to create a large
318 mutexes short.
[all …]
H A Dpi-futex.rst64 locks (such as futex-based pthread mutexes) is priority inheritance:
79 mutexes involves no kernel work at all - they behave quite similarly to
82 futexes.) Userspace uses atomic ops to lock/unlock these mutexes without
115 possible anyway, due to existing ABI properties of pthread mutexes.]
/linux/tools/perf/util/
H A Dsharded_mutex.h11 * constantly hashed, a sharded mutex is an alternative global pool of mutexes
16 /* mutexes array is 1<<cap_bits in size. */
18 struct mutex mutexes[]; member
26 return &sm->mutexes[hash_bits(hash, sm->cap_bits)]; in sharded_mutex__get_mutex()
H A Dsharded_mutex.c22 mutex_init(&result->mutexes[i]); in sharded_mutex__new()
30 mutex_destroy(&sm->mutexes[i]); in sharded_mutex__delete()
H A Drwsem.h8 * Mutexes have additional error checking. Enable to use a mutex rather than a
/linux/drivers/reset/
H A Dreset-eyeq.c172 struct mutex mutexes[EQR_MAX_DOMAIN_COUNT]; member
202 lockdep_assert_held(&priv->mutexes[domain]); in eqr_busy_wait_locked()
261 lockdep_assert_held(&priv->mutexes[domain]); in eqr_assert_locked()
302 guard(mutex)(&priv->mutexes[domain]); in eqr_assert()
315 lockdep_assert_held(&priv->mutexes[domain]); in eqr_deassert_locked()
356 guard(mutex)(&priv->mutexes[domain]); in eqr_deassert()
372 guard(mutex)(&priv->mutexes[domain]); in eqr_status()
462 mutex_init(&priv->mutexes[i]); in eqr_probe()
/linux/drivers/acpi/acpica/
H A Dutmutex.c27 * DESCRIPTION: Create the system mutex objects. This includes mutexes,
90 * DESCRIPTION: Delete all of the system mutex objects. This includes mutexes,
206 * Deadlock prevention. Check if this thread owns any mutexes of value in acpi_ut_acquire_mutex()
301 * Deadlock prevention. Check if this thread owns any mutexes of value in acpi_ut_release_mutex()
/linux/tools/testing/selftests/locking/
H A Dww_mutex.sh7 # Runs API tests for struct ww_mutex (Wait/Wound mutexes)
/linux/Documentation/devicetree/bindings/hwlock/
H A Dqcom-hwspinlock.yaml13 The hardware block provides mutexes utilized between different processors on
/linux/lib/
H A Ddebug_locks.c6 * spinlocks, rwlocks, mutexes and rwsems.
/linux/kernel/configs/
H A Ddebug.config93 # Lock Debugging (spinlocks, mutexes, etc...)
/linux/fs/ocfs2/
H A Duptodate.h36 * be mutexes.
/linux/drivers/gpu/drm/i915/gt/
H A Dintel_engine_pm.h96 * the usual mutexes and relying on the engine-pm barrier in intel_engine_create_kernel_request()
/linux/include/uapi/xen/
H A Dgntalloc.h59 * mutexes or close notification on communication channels.
/linux/Documentation/userspace-api/
H A Dfutex2.rst10 performant synchronization mechanisms, such as mutexes, semaphores and
/linux/tools/include/linux/
H A Dpoison.h79 /********** kernel/mutexes **********/
/linux/Documentation/driver-api/media/
H A Ddtv-demux.rst39 addressed, e.g. by protecting parts of code with mutexes.
/linux/rust/kernel/sync/
H A Dlock.rs5 //! It contains a generic Rust lock and guard that allow for different backends (e.g., mutexes,
111 /// Some locks are known to be self-referential (e.g., mutexes), while others are architecture
/linux/Documentation/process/
H A Dvolatile-considered-harmful.rst22 safe (spinlocks, mutexes, memory barriers, etc.) are designed to prevent
/linux/Documentation/livepatch/
H A Dcallbacks.rst18 mutexes/spinlocks, or even stop_machine(), to avoid concurrency issues.
/linux/Documentation/trace/rv/
H A Dmonitor_rtapp.rst64 directly, but use PI mutexes and PI condition variables which are built on
/linux/tools/arch/alpha/include/uapi/asm/
H A Derrno.h122 /* for robust mutexes */

123