/linux-6.12.1/include/asm-generic/ |
D | barrier.h | 102 #ifndef smp_rmb 103 #define smp_rmb() do { kcsan_rmb(); __smp_rmb(); } while (0) macro 116 #ifndef smp_rmb 117 #define smp_rmb() barrier() macro 232 #define smp_acquire__after_ctrl_dep() smp_rmb()
|
/linux-6.12.1/arch/x86/kvm/ |
D | irq.h | 72 smp_rmb(); in irqchip_split() 81 smp_rmb(); in irqchip_kernel() 95 smp_rmb(); in irqchip_in_kernel()
|
/linux-6.12.1/arch/arm64/include/asm/vdso/ |
D | compat_barrier.h | 28 #undef smp_rmb 32 #define smp_rmb() aarch32_smp_rmb() macro
|
/linux-6.12.1/tools/include/asm/ |
D | barrier.h | 38 #ifndef smp_rmb 39 # define smp_rmb() rmb() macro
|
/linux-6.12.1/tools/memory-model/litmus-tests/ |
D | MP+fencewmbonceonce+fencermbonceonce.litmus | 6 * This litmus test demonstrates that smp_wmb() and smp_rmb() provide 26 smp_rmb();
|
/linux-6.12.1/arch/sparc/include/asm/ |
D | vvar.h | 51 smp_rmb(); /* Finish all reads before we return seq */ in vvar_read_begin() 58 smp_rmb(); /* Finish all reads before checking the value of seq */ in vvar_read_retry()
|
/linux-6.12.1/include/vdso/ |
D | helpers.h | 17 smp_rmb(); in vdso_read_begin() 26 smp_rmb(); in vdso_read_retry()
|
/linux-6.12.1/include/clocksource/ |
D | hyperv_timer.h | 72 smp_rmb(); in hv_read_tsc_page_tsc() 82 smp_rmb(); in hv_read_tsc_page_tsc()
|
/linux-6.12.1/include/drm/ |
D | spsc_queue.h | 94 smp_rmb(); in spsc_queue_pop() 111 smp_rmb(); in spsc_queue_pop()
|
/linux-6.12.1/Documentation/RCU/ |
D | rculist_nulls.rst | 59 but a version with an additional memory barrier (smp_rmb()) 67 pos && ({ next = pos->next; smp_rmb(); prefetch(next); 1; }) && 75 And note the traditional hlist_for_each_entry_rcu() misses this smp_rmb():: 140 Avoiding extra smp_rmb() 143 With hlist_nulls we can avoid extra smp_rmb() in lockless_lookup().
|
/linux-6.12.1/arch/mips/kernel/ |
D | rtlx.c | 125 smp_rmb(); in rtlx_open() 134 smp_rmb(); in rtlx_open() 254 smp_rmb(); in rtlx_read() 297 smp_rmb(); in rtlx_write()
|
/linux-6.12.1/arch/xtensa/kernel/ |
D | process.c | 126 smp_rmb(); in coprocessor_release_all() 154 smp_rmb(); in coprocessor_flush_all() 171 smp_rmb(); in coprocessor_flush_release_all()
|
/linux-6.12.1/tools/testing/selftests/kvm/ |
D | rseq_test.c | 269 smp_rmb(); in main() 274 smp_rmb(); in main()
|
/linux-6.12.1/drivers/cpuidle/ |
D | coupled.c | 304 smp_rmb(); in cpuidle_coupled_get_state() 487 smp_rmb(); in cpuidle_enter_state_coupled() 568 smp_rmb(); in cpuidle_enter_state_coupled()
|
/linux-6.12.1/Documentation/translations/zh_CN/core-api/ |
D | local_ops.rst | 126 的CPU上分别使用显式的 ``smp_wmb()`` 和 ``smp_rmb()`` 内存屏障。如果你使 129 也应有一个 ``smp_rmb()`` 。
|
/linux-6.12.1/tools/include/linux/ |
D | ring_buffer.h | 63 smp_rmb(); in ring_buffer_read_head()
|
/linux-6.12.1/tools/arch/x86/include/asm/ |
D | barrier.h | 27 #define smp_rmb() barrier() macro
|
/linux-6.12.1/arch/powerpc/include/asm/book3s/64/ |
D | hash-64k.h | 104 smp_rmb(); in __real_pte() 210 smp_rmb(); in get_hpte_slot_array()
|
/linux-6.12.1/kernel/livepatch/ |
D | patch.c | 84 smp_rmb(); in klp_ftrace_handler() 94 smp_rmb(); in klp_ftrace_handler()
|
/linux-6.12.1/arch/arm/mach-versatile/ |
D | platsmp.c | 93 smp_rmb(); in versatile_boot_secondary()
|
/linux-6.12.1/include/linux/ |
D | cnt32_to_63.h | 97 smp_rmb(); \
|
/linux-6.12.1/drivers/gpu/host1x/ |
D | syncpt.c | 273 smp_rmb(); in host1x_syncpt_is_expired() 394 smp_rmb(); in host1x_syncpt_read_max() 409 smp_rmb(); in host1x_syncpt_read_min()
|
/linux-6.12.1/lib/ |
D | is_single_threaded.c | 46 smp_rmb(); in current_is_single_threaded()
|
/linux-6.12.1/tools/arch/riscv/include/asm/ |
D | barrier.h | 23 #define smp_rmb() RISCV_FENCE(r, r) macro
|
/linux-6.12.1/tools/memory-model/Documentation/ |
D | recipes.txt | 291 and to use smp_load_acquire() instead of smp_rmb(). However, the older 292 smp_wmb() and smp_rmb() APIs are still heavily used, so it is important 306 smp_rmb(); 311 smp_rmb() macro orders prior loads against later loads. Therefore, if 326 smp_rmb(); 335 * (A) smp_rmb() (C) 342 write side and smp_rmb() on the read side. 345 or smp_rmb(), any code fragment that would work with smp_rmb() and 390 * (A) smp_rmb() (C)
|