Home
last modified time | relevance | path

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

12345678

/freebsd/share/man/man9/
H A Dmtx_pool.963 Mutex pools are designed to be used as short term leaf mutexes;
66 They operate using a shared pool of mutexes.
72 The shared mutexes in the
77 blockable mutexes, and should only be used in appropriate situations.
78 The mutexes in the
82 Other mutex pools may be created that contain mutexes with different
83 properties, such as spin mutexes.
85 The caller can lock and unlock mutexes returned by the pool routines, but
86 since the mutexes are shared, the caller should not attempt to destroy them
88 While pool mutexes are normally leaf mutexes
[all …]
H A Dlocking.937 .Ss Mutexes
38 Mutexes (also called "blocking mutexes") are the most commonly used
43 Mutexes are adaptive by default, meaning that
47 Mutexes fully support priority propagation.
52 .Ss Spin Mutexes
53 Spin mutexes are a variation of basic mutexes; the main difference between
54 the two is that spin mutexes never block.
57 Unlike ordinary mutexes, spin mutexes disable interrupts when acquired.
60 Spin mutexes should be used only when absolutely necessary,
67 With most synchronization primitives, such as mutexes, the programmer must
[all …]
H A Dmutex.9104 Mutexes are the most basic and primary method of thread synchronization.
105 The major design considerations for mutexes are:
108 Acquiring and releasing uncontested mutexes should be as cheap
118 There are currently two flavors of mutexes, those that context switch
123 mutexes will context switch when they are already held.
131 Mutexes which do not context switch are
133 mutexes.
143 It is permissible to hold multiple spin mutexes.
433 that implement other synchronization primitives such as default mutexes,
449 Default mutexes
[all …]
H A Dcritical_enter.973 Also, they should not be interlocked with operations on mutexes, sx locks,
76 One exception to this is that spin mutexes include a critical section,
77 so in certain cases critical sections may be interlocked with spin mutexes.
H A Dsema.961 Unlike mutexes, semaphores do not have the concept of an owner, so they can also
69 Semaphores should not be used where mutexes and condition variables
71 Semaphores are a more complex synchronization mechanism than mutexes and
H A DBUS_SETUP_INTR.9126 Mutexes are not allowed to be held across calls to these functions.
129 In this context, normal mutexes cannot be used.
H A Depoch.9105 By default mutexes cannot be held across
114 Permit holding mutexes across
/freebsd/contrib/llvm-project/compiler-rt/lib/tsan/rtl/
H A Dtsan_report.cpp37 , mutexes() in ReportDesc()
123 Printf(" (mutexes:"); in PrintMutexSet()
269 if (rep->mutexes.Size()) in ChooseSummaryStack()
270 return rep->mutexes[0]->stack; in ChooseSummaryStack()
297 for (uptr i = 0; i < rep->mutexes.Size(); i++) in PrintReport()
298 PrintMutexShortWithAddress(rep->mutexes[i], " => "); in PrintReport()
299 PrintMutexShort(rep->mutexes[0], "\n\n"); in PrintReport()
300 CHECK_GT(rep->mutexes.Size(), 0U); in PrintReport()
301 CHECK_EQ(rep->mutexes.Size() * (flags()->second_deadlock_stack ? 2 : 1), in PrintReport()
303 for (uptr i = 0; i < rep->mutexes in PrintReport()
[all...]
H A Dtsan_mutexset.h11 // MutexSet holds the set of mutexes currently held by a thread.
22 // Holds limited number of mutexes.
23 // The oldest mutexes are discarded on overflow.
75 // Go does not have mutexes, so do not spend memory and time.
H A Dtsan_debugging.cpp85 *mutex_count = rep->mutexes.Size(); in __tsan_get_report_data()
158 CHECK_LT(idx, rep->mutexes.Size()); in __tsan_get_report_mutex()
159 ReportMutex *mutex = rep->mutexes[idx]; in __tsan_get_report_mutex()
/freebsd/contrib/jemalloc/include/jemalloc/internal/
H A Dmutex_pool.h13 malloc_mutex_t mutexes[MUTEX_POOL_SIZE]; member
23 return &pool->mutexes[hash_result[0] % MUTEX_POOL_SIZE]; in mutex_pool_mutex()
29 malloc_mutex_assert_not_owner(tsdn, &pool->mutexes[i]); in mutex_pool_assert_not_held()
35 * You're not allowed to acquire mutexes in the pool one at a time. You have to
36 * acquire all the mutexes you'll need in a single function call, and then
H A Dprof_types.h37 * Number of mutexes shared among all gctx's. No space is allocated for these
43 * Number of mutexes shared among all tdata's. No space is allocated for these
/freebsd/sys/kern/
H A Dkern_mtxpool.c29 * term leaf mutexes (e.g. the last mutex you might acquire other then
35 * - no structural overhead. Mutexes can be associated with structures
37 * - mutexes can be obtained for invalid pointers, useful when uses
38 * mutexes to interlock destructor ops.
43 * - should generally only be used as leaf mutexes.
94 * you cannot obtain any other mutexes until you release it. You can
167 * mutexes until you release it. You can legally msleep() on the mutex.
/freebsd/lib/libsys/
H A D_umtx_op.250 pthread locks, like mutexes, condition variables and so on.
130 In the manual page, mutexes not having
134 flags set, are called normal mutexes.
140 For priority protected mutexes, the
435 one for simple wait requests, mutexes, rwlocks, condvars and other
446 robust mutexes.
451 On thread termination, the kernel walks two lists of mutexes.
997 priority inherited protocol mutexes.
1048 Only normal mutexes are supported by the request.
1053 since mutexes using it cannot synchronize their own destruction.
[all …]
/freebsd/contrib/llvm-project/compiler-rt/lib/sanitizer_common/
H A Dsanitizer_mutex.h86 // Each tool own mutexes must start at this number.
88 // Type for legacy mutexes that are not checked for deadlocks.
91 // The leaf mutexes can be locked under any other non-leaf mutex,
94 // Multiple mutexes of this type can be locked at the same time.
110 // The table fixes what mutexes can be locked under what mutexes.
139 // Checks that the current thread does not hold any mutexes
H A Dsanitizer_mutex.cpp61 // unnecessary (we almost never lock multiple mutexes of the same type recursively).
67 // Adjacency matrix of what mutexes can be locked under what mutexes.
104 // Add leaf mutexes. in DebugMutexInit()
/freebsd/lib/libthr/
H A Dlibthr.3218 The maximal number of robust mutexes allowed for one thread.
219 The kernel will not unlock more mutexes than specified, see
225 mutexes unlock was prematurely aborted after detecting some inconsistency,
286 The internal allocator for mutexes is used to avoid bootstrap issues
289 implementations which need working mutexes to function.
/freebsd/contrib/llvm-project/compiler-rt/lib/tsan/benchmarks/
H A Dvts_many_threads_bench.cpp43 Mutex mutexes[kNumMutexes]; variable
64 mutexes[(offset + i) % kNumMutexes].Lock(); in Thread()
65 mutexes[(offset + i) % kNumMutexes].Unlock(); in Thread()
/freebsd/contrib/llvm-project/lldb/source/Plugins/InstrumentationRuntime/TSan/
H A DInstrumentationRuntimeTSan.cpp144 } mutexes[REPORT_ARRAY_SIZE];
191 t.mutexes[i].idx = i;
192 …_tsan_get_report_mutex(t.report, i, &t.mutexes[i].mutex_id, &t.mutexes[i].addr, &t.mutexes[i].dest…
428 StructuredData::ArraySP mutexes = ConvertToStructuredArray( in RetrieveReportData() local
429 main_value, ".mutexes", ".mutex_count", in RetrieveReportData()
445 dict->AddItem("mutexes", mutexes); in RetrieveReportData()
1002 if (path == "mutexes") { in GenerateThreadName()
1068 AddThreadsForPath("mutexes", threads, process_sp, info); in GetBacktracesFromExtendedStopInfo()
/freebsd/sys/sys/
H A D_mutex.h54 * mtx_padalign mutexes can use the mtx(9) API transparently without
56 * Pad-aligned mutexes used within structures should generally be the
/freebsd/lib/libc/tests/stdlib/
H A Ddynthr_test.c48 * uses calloc to initialize pthread mutexes, and jemalloc uses pthread mutexes.
/freebsd/lib/libc/stdlib/malloc/jemalloc/
H A Djemalloc.31774 stats\&.mutexes\&.ctl\&.{counter}; (\fBcounter specific type\fR) r\- [\fB\-\-enable\-stats\fR]
1806 stats\&.mutexes\&.background_thread\&.{counter} (\fBcounter specific type\fR) r\- [\fB\-\-enable\-s…
1818 stats\&.mutexes\&.prof\&.{counter} (\fBcounter specific type\fR) r\- [\fB\-\-enable\-stats\fR]
1828 stats\&.mutexes\&.reset (\fBvoid\fR) \-\- [\fB\-\-enable\-stats\fR]
1830 Reset all mutex profile statistics, including global mutexes, arena mutexes and bin mutexes\&.
2129 stats\&.arenas\&.<i>\&.mutexes\&.large\&.{counter} (\fBcounter specific type\fR) r\- [\fB\-\-enable…
2139 stats\&.arenas\&.<i>\&.mutexes\&.extent_avail\&.{counter} (\fBcounter specific type\fR) r\- [\fB\-\…
2149 stats\&.arenas\&.<i>\&.mutexes\&.extents_dirty\&.{counter} (\fBcounter specific type\fR) r\- [\fB\-…
2159 stats\&.arenas\&.<i>\&.mutexes\&.extents_muzzy\&.{counter} (\fBcounter specific type\fR) r\- [\fB\-…
2169 stats\&.arenas\&.<i>\&.mutexes\&.extents_retained\&.{counter} (\fBcounter specific type\fR) r\- [\f…
[all …]
/freebsd/share/man/man4/
H A Dwitness.499 code can also be configured to skip all checks on spin mutexes.
108 If the variable is set to a non-zero value, then spin mutexes are skipped.
/freebsd/share/man/man3/
H A Dpthread_mutexattr.3116 function specifies the protocol to be followed in utilizing mutexes.
155 for details of the implementation of the shared mutexes,
/freebsd/contrib/netbsd-tests/lib/libpthread/
H A Dt_mutex.c103 atf_tc_set_md_var(tc, "descr", "Checks mutexes"); in ATF_TC_HEAD()
178 atf_tc_set_md_var(tc, "descr", "Checks mutexes"); in ATF_TC_HEAD()
296 atf_tc_set_md_var(tc, "descr", "Checks mutexes using a static " in ATF_TC_HEAD()
400 atf_tc_set_md_var(tc, "descr", "Checks mutexes"); in ATF_TC_HEAD()
474 atf_tc_set_md_var(tc, "descr", "Checks mutexes for priority setting"); in ATF_TC_HEAD()

12345678