| /OK3568_Linux_fs/kernel/Documentation/core-api/ |
| H A D | refcount-vs-atomic.rst | 14 ``atomic_*()`` functions with regards to the memory ordering guarantees. 17 these memory ordering guarantees. 23 memory ordering in general and for atomic operations specifically. 25 Relevant types of memory ordering 29 ordering types that are relevant for the atomics and reference 33 In the absence of any memory ordering guarantees (i.e. fully unordered) 41 A strong (full) memory ordering guarantees that all prior loads and 49 A RELEASE memory ordering guarantees that all prior loads and 57 An ACQUIRE memory ordering guarantees that all post loads and 84 Memory ordering guarantee changes: [all …]
|
| /OK3568_Linux_fs/kernel/tools/memory-model/Documentation/ |
| H A D | simple.txt | 2 memory-ordering lives simple, as is necessary for those whose domain 3 is complex. After all, there are bugs other than memory-ordering bugs, 4 and the time spent gaining memory-ordering knowledge is not available 139 memory ordering. 175 2. Operations that did not return a value and provided no ordering, 178 3. Operations that returned a value and provided full ordering, such as 180 value-returning operations provide full ordering only conditionally. 181 For example, cmpxchg() provides ordering only upon success. 184 provide full ordering. These are flagged with either a _relaxed() 185 suffix (providing no ordering), or an _acquire() or _release() suffix [all …]
|
| H A D | recipes.txt | 41 your full-ordering warranty, as do undersized accesses that load 157 lock's ordering properties. 159 Ordering can be extended to CPUs not holding the lock by careful use 208 In the absence of any ordering, this goal may not be met, as can be seen 217 the desired MP ordering. The general approach is shown below: 272 The rcu_assign_pointer() macro has the same ordering properties as does 357 absence of any ordering it is quite possible that this may happen, as 434 The ordering in this example is stronger than it needs to be. For 435 example, ordering would still be preserved if CPU1()'s smp_load_acquire() 468 well as simple and powerful, at least as memory-ordering mechanisms go. [all …]
|
| H A D | cheatsheet.txt | 25 C: Ordering is cumulative 26 P: Ordering propagates 29 Y: Provides ordering 30 a: Provides ordering given intervening RMW atomic operation
|
| /OK3568_Linux_fs/kernel/include/linux/ |
| H A D | refcount.h | 60 * Memory ordering 63 * Memory ordering rules are slightly relaxed wrt regular atomic_t functions 66 * The increments are fully relaxed; these will not provide ordering. The 68 * reference count on will provide the ordering. For locked data structures, 84 * Note that the allocator is responsible for ordering things between free() 88 * ordering on success. 175 * Provides no memory ordering, it is assumed the caller has guaranteed the 211 * Provides no memory ordering, it is assumed the caller has guaranteed the 237 * Provides no memory ordering, it is assumed the caller has guaranteed the 259 * Provides no memory ordering, it is assumed the caller already has a [all …]
|
| /OK3568_Linux_fs/kernel/arch/csky/include/asm/ |
| H A D | barrier.h | 19 * bar.brwarw: ordering barrier for all load/store instructions before it 20 * bar.brwarws: ordering barrier for all load/store instructions before it 22 * bar.brar: ordering barrier for all load instructions before it 23 * bar.brars: ordering barrier for all load instructions before it 25 * bar.bwaw: ordering barrier for all store instructions before it 26 * bar.bwaws: ordering barrier for all store instructions before it
|
| /OK3568_Linux_fs/kernel/Documentation/RCU/Design/Memory-Ordering/ |
| H A D | Tree-RCU-Memory-Ordering.rst | 2 A Tour Through TREE_RCU's Grace-Period Memory Ordering 13 grace-period memory ordering guarantee is provided. 15 What Is Tree RCU's Grace Period Memory Ordering Guarantee? 18 RCU grace periods provide extremely strong memory-ordering guarantees 46 Tree RCU Grace Period Memory Ordering Building Blocks 49 The workhorse for RCU's grace-period memory ordering is the 72 Tree RCU uses these two ordering guarantees to form an ordering 77 The following litmus test exhibits the ordering effects of these 116 RCU's grace-period memory ordering guarantee to extend to any 144 might not yet be subject to the grace period's memory ordering. [all …]
|
| /OK3568_Linux_fs/kernel/tools/include/linux/ |
| H A D | refcount.h | 15 * Memory ordering rules are slightly relaxed wrt regular atomic_t functions 18 * The increments are fully relaxed; these will not provide ordering. The 20 * reference count on will provide the ordering. For locked data structures, 36 * Note that the allocator is responsible for ordering things between free() 71 * Provides no memory ordering, it is assumed the caller has guaranteed the 104 * Provides no memory ordering, it is assumed the caller already has a 116 * Provides release memory ordering, such that prior loads and stores are done
|
| /OK3568_Linux_fs/kernel/arch/mips/include/asm/ |
| H A D | sync.h | 16 * 2) Ordering barriers, which only ensure that affected memory operations 20 * Ordering barriers can be more efficient than completion barriers, since: 22 * a) Ordering barriers only require memory access instructions which preceed 31 * b) Multiple variants of ordering barrier are provided which allow the 35 * barrier & don't care about the ordering of loads then the 'wmb' 36 * ordering barrier can be used. Limiting the barrier's effects to stores 57 * we're satisfied that lightweight ordering barriers defined by MIPSr6 are 65 * ...except on Cavium Octeon CPUs, which have been using the 'wmb' ordering 153 * Some Cavium Octeon CPUs suffer from a bug that causes a single wmb ordering
|
| /OK3568_Linux_fs/kernel/Documentation/ |
| H A D | memory-barriers.txt | 87 (*) Assumed minimum execution ordering model. 137 abstract CPU, memory operation ordering is very relaxed, and a CPU may actually 365 ordering over the memory operations on either side of the barrier. 387 A write barrier is a partial ordering on stores only; it is not required 407 A data dependency barrier is a partial ordering on interdependent loads 421 showing the ordering constraints. 441 A read barrier is a partial ordering on loads only; it is not required to 458 A general memory barrier is a partial ordering over both loads and stores. 642 of dependency ordering is to -prevent- writes to the data structure, along 645 naturally occurring ordering prevents such records from being lost. [all …]
|
| /OK3568_Linux_fs/kernel/drivers/staging/rtl8723bs/include/ |
| H A D | basic_types.h | 40 /* Convert little data endian to host ordering */ 51 /* Read le16 data from memory and convert to host ordering */ 62 /* Write le data to memory in host ordering */ 100 * Return 4-byte value in host byte ordering from 113 /* 4-byte value in host byte ordering. */ 134 /* and return the result in 4-byte value in host byte ordering. */
|
| /OK3568_Linux_fs/kernel/fs/jffs2/ |
| H A D | README.Locking | 37 Ordering constraints: See f->sem. 62 Ordering constraints: 67 No ordering rules have been made for doing so. 115 Ordering constraints: 147 Ordering constraints: 168 Ordering constraints:
|
| /OK3568_Linux_fs/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/share/man/man1/ |
| H A D | aarch64-none-linux-gnu-gprof.1 | 152 [ \-\-debug[=\fIlevel\fR] ] [ \-\-function\-ordering ] 153 [ \-\-file\-ordering \fImap_file\fR ] [ \-\-directory\-path=\fIdirs\fR ] 388 .IX Item "--function-ordering" 390 The \fB\-\-function\-ordering\fR option causes \f(CW\*(C`gprof\*(C'\fR to print a 391 suggested function ordering for the program based on profiling data. 392 This option suggests an ordering which may improve paging, tlb and 394 ordering of functions in an executable. 405 .IX Item "--file-ordering map_file" 407 The \fB\-\-file\-ordering\fR option causes \f(CW\*(C`gprof\*(C'\fR to print a 408 suggested .o link line ordering for the program based on profiling data. [all …]
|
| /OK3568_Linux_fs/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/share/man/man1/ |
| H A D | arm-none-linux-gnueabihf-gprof.1 | 152 [ \-\-debug[=\fIlevel\fR] ] [ \-\-function\-ordering ] 153 [ \-\-file\-ordering \fImap_file\fR ] [ \-\-directory\-path=\fIdirs\fR ] 388 .IX Item "--function-ordering" 390 The \fB\-\-function\-ordering\fR option causes \f(CW\*(C`gprof\*(C'\fR to print a 391 suggested function ordering for the program based on profiling data. 392 This option suggests an ordering which may improve paging, tlb and 394 ordering of functions in an executable. 405 .IX Item "--file-ordering map_file" 407 The \fB\-\-file\-ordering\fR option causes \f(CW\*(C`gprof\*(C'\fR to print a 408 suggested .o link line ordering for the program based on profiling data. [all …]
|
| /OK3568_Linux_fs/kernel/include/asm-generic/ |
| H A D | rwonce.h | 6 * particular ordering. One way to make the compiler aware of ordering is to 16 * mutilate accesses that either do not require ordering or that interact 18 * required ordering.
|
| /OK3568_Linux_fs/kernel/Documentation/driver-api/ |
| H A D | device_link.rst | 23 suspend/resume and shutdown ordering. 28 types: It guarantees correct suspend/resume and shutdown ordering between a 35 suspend/resume and shutdown ordering is needed, the device link may 83 shutdown ordering) and ``DL_FLAG_PM_RUNTIME`` to express that runtime PM 204 suspend/resume ordering, this needs to be implemented separately. 208 ordering or a driver presence dependency. 211 device link and does not allow for shutdown ordering or driver presence 220 Ordering of these devices during suspend/resume is determined by the 245 correct suspend/resume and shutdown ordering between parent and child,
|
| /OK3568_Linux_fs/kernel/tools/perf/pmu-events/arch/x86/goldmont/ |
| H A D | memory.json | 26 …e clears due to memory ordering issues. This occurs when a snoop request happens and the machine … 32 "BriefDescription": "Machine clears due to memory ordering issue"
|
| /OK3568_Linux_fs/kernel/tools/perf/pmu-events/arch/x86/goldmontplus/ |
| H A D | memory.json | 28 …e clears due to memory ordering issues. This occurs when a snoop request happens and the machine … 36 "BriefDescription": "Machine clears due to memory ordering issue"
|
| /OK3568_Linux_fs/prebuilts/gcc/linux-x86/arm/gcc-arm-10.3-2021.07-x86_64-arm-none-linux-gnueabihf/share/doc/gprof.html/ |
| H A D | Output-Options.html | 203 <dt><code>--function-ordering</code></dt> 204 <dd><p>The ‘<samp>--function-ordering</samp>’ option causes <code>gprof</code> to print… 205 suggested function ordering for the program based on profiling data. 206 This option suggests an ordering which may improve paging, tlb and 208 ordering of functions in an executable. 216 <dt><code>--file-ordering <var>map_file</var></code></dt> 217 <dd><p>The ‘<samp>--file-ordering</samp>’ option causes <code>gprof</code> to print a 218 suggested .o link line ordering for the program based on profiling data. 219 This option suggests an ordering which may improve paging, tlb and 221 ordering of functions in an executable.
|
| /OK3568_Linux_fs/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/share/doc/gprof.html/ |
| H A D | Output-Options.html | 203 <dt><code>--function-ordering</code></dt> 204 <dd><p>The ‘<samp>--function-ordering</samp>’ option causes <code>gprof</code> to print… 205 suggested function ordering for the program based on profiling data. 206 This option suggests an ordering which may improve paging, tlb and 208 ordering of functions in an executable. 216 <dt><code>--file-ordering <var>map_file</var></code></dt> 217 <dd><p>The ‘<samp>--file-ordering</samp>’ option causes <code>gprof</code> to print a 218 suggested .o link line ordering for the program based on profiling data. 219 This option suggests an ordering which may improve paging, tlb and 221 ordering of functions in an executable.
|
| /OK3568_Linux_fs/external/xserver/mi/ |
| H A D | mibitblt.c | 88 unsigned int *ordering; in miCopyArea() local 139 ordering = xallocarray(numRects, sizeof(unsigned int)); in miCopyArea() 140 if (!pptFirst || !pwidthFirst || !ordering) { in miCopyArea() 141 free(ordering); in miCopyArea() 158 ordering[i] = i; in miCopyArea() 165 ordering[i] = i; in miCopyArea() 172 /* reverse the horizontal band in the output ordering */ in miCopyArea() 174 ordering[i] = j; in miCopyArea() 186 /* reverse the horizontal band in the output ordering */ in miCopyArea() 188 ordering[yMax] = j; in miCopyArea() [all …]
|
| /OK3568_Linux_fs/u-boot/include/linux/ |
| H A D | compiler.h | 259 * compiler is aware of some particular ordering. One way to make the 260 * compiler aware of ordering is to put the two invocations of READ_ONCE, 272 * mutilate accesses that either do not require ordering or that interact 274 * required ordering. 303 * smp_cond_acquire() - Spin wait for cond with ACQUIRE ordering 514 * but only when the compiler is aware of some particular ordering. One way 515 * to make the compiler aware of ordering is to put the two invocations of 525 * mutilate accesses that either do not require ordering or that interact 527 * required ordering.
|
| /OK3568_Linux_fs/kernel/Documentation/filesystems/ |
| H A D | inotify.rst | 50 - There would be no way to get event ordering. Events on file foo and 52 which happened first. A single queue trivially gives you ordering. Such 53 ordering is crucial to existing applications such as Beagle. Imagine 54 "mv a b ; mv b a" events without ordering.
|
| /OK3568_Linux_fs/kernel/Documentation/dev-tools/ |
| H A D | kcsan.rst | 201 The LKMM defines the propagation and ordering rules of various memory 207 ``atomic_*``, etc.), but is oblivious of any ordering guarantees and simply 213 memory ordering. Developers should therefore carefully consider the required 214 memory ordering requirements that remain unchecked. If, however, missing 215 memory ordering (that is observable with a particular compiler and 293 5. **Memory Ordering:** KCSAN is *not* explicitly aware of the LKMM's ordering 309 To build a correct happens-before relation, KTSAN must be aware of all ordering
|
| /OK3568_Linux_fs/kernel/drivers/staging/rtl8188eu/include/ |
| H A D | basic_types.h | 25 /* Convert little data endian to host ordering */ 60 * Return 4-byte value in host byte ordering from 72 * value to host byte ordering. 92 * and return the result in 4-byte value in host byte ordering.
|