| /linux/security/selinux/ |
| H A D | status.c | 88 smp_wmb(); in selinux_status_update_setenforce() 92 smp_wmb(); in selinux_status_update_setenforce() 113 smp_wmb(); in selinux_status_update_policyload() 118 smp_wmb(); in selinux_status_update_policyload()
|
| /linux/include/vdso/ |
| H A D | helpers.h | 55 smp_wmb(); in vdso_write_begin_clock() 61 smp_wmb(); in vdso_write_end_clock() 72 smp_wmb(); in vdso_write_begin() 80 smp_wmb(); in vdso_write_end()
|
| /linux/include/asm-generic/ |
| H A D | barrier.h | 106 #ifndef smp_wmb 107 #define smp_wmb() do { kcsan_wmb(); __smp_wmb(); } while (0) macro 120 #ifndef smp_wmb 121 #define smp_wmb() barrier() macro
|
| /linux/rust/kernel/sync/ |
| H A D | barrier.rs | 40 pub fn smp_wmb() { in smp_wmb() function 43 unsafe { bindings::smp_wmb() }; in smp_wmb()
|
| /linux/tools/memory-model/litmus-tests/ |
| H A D | S+fencewmbonceonce+poacquireonce.litmus | 6 * Can a smp_wmb(), instead of a release, and an acquire order a prior 15 smp_wmb();
|
| H A D | MP+fencewmbonceonce+fencermbonceonce.litmus | 6 * This litmus test demonstrates that smp_wmb() and smp_rmb() provide 16 smp_wmb();
|
| /linux/tools/virtio/ringtest/ |
| H A D | main.h | 143 #define smp_wmb() barrier() macro 145 #define smp_wmb() asm volatile("dmb ishst" ::: "memory") macro 147 #define smp_wmb() smp_release() macro
|
| /linux/tools/include/asm/ |
| H A D | barrier.h | 42 #ifndef smp_wmb 43 # define smp_wmb() wmb() macro
|
| /linux/arch/sparc/include/asm/ |
| H A D | vvar.h | 65 smp_wmb(); /* Makes sure that increment of seq is reflected */ in vvar_write_begin() 70 smp_wmb(); /* Makes the value of seq current before we increment */ in vvar_write_end()
|
| /linux/arch/openrisc/kernel/ |
| H A D | sync-timer.c | 56 smp_wmb(); in synchronise_count_master() 77 smp_wmb(); in synchronise_count_master()
|
| /linux/arch/arm/mach-socfpga/ |
| H A D | platsmp.c | 36 smp_wmb(); in socfpga_boot_secondary() 59 smp_wmb(); in socfpga_a10_boot_secondary()
|
| /linux/arch/x86/include/asm/ |
| H A D | pgtable-3level.h | 39 smp_wmb(); in native_set_pte() 70 smp_wmb(); in native_pte_clear() 77 smp_wmb(); in native_pmd_clear()
|
| /linux/arch/mips/kernel/ |
| H A D | rtlx.c | 276 smp_wmb(); in rtlx_read() 278 smp_wmb(); in rtlx_read() 318 smp_wmb(); in rtlx_write() 320 smp_wmb(); in rtlx_write()
|
| /linux/include/linux/ |
| H A D | seqlock.h | 432 smp_wmb(); in do_raw_write_seqcount_begin() 451 smp_wmb(); in do_raw_write_seqcount_end() 575 smp_wmb(); in do_raw_write_seqcount_barrier() 593 smp_wmb(); in do_write_seqcount_invalidate() 698 smp_wmb(); /* prior stores before incrementing "sequence" */ in raw_write_seqcount_latch() 700 smp_wmb(); /* increment "sequence" before following stores */ in raw_write_seqcount_latch()
|
| /linux/tools/testing/selftests/kvm/ |
| H A D | rseq_test.c | 98 smp_wmb(); in migration_worker() 102 smp_wmb(); in migration_worker()
|
| /linux/rust/helpers/ |
| H A D | barrier.c | 12 smp_wmb(); in rust_helper_smp_wmb()
|
| /linux/net/llc/ |
| H A D | llc_input.c | 45 smp_wmb(); /* ensure initialisation is complete before it's called */ in llc_add_pack() 61 smp_wmb(); in llc_set_station_handler()
|
| /linux/arch/powerpc/sysdev/ |
| H A D | fsl_lbc.c | 247 smp_wmb(); in fsl_lbc_ctrl_irq() 253 smp_wmb(); in fsl_lbc_ctrl_irq() 257 smp_wmb(); in fsl_lbc_ctrl_irq()
|
| /linux/Documentation/translations/zh_CN/core-api/ |
| H A D | local_ops.rst | 126 的CPU上分别使用显式的 ``smp_wmb()`` 和 ``smp_rmb()`` 内存屏障。如果你使 128 冲区写和计数器增量之间应该有一个 ``smp_wmb()`` ,在计数器读和缓冲区读之间
|
| /linux/tools/arch/x86/include/asm/ |
| H A D | barrier.h | 28 #define smp_wmb() barrier() macro
|
| /linux/arch/arm/mach-versatile/ |
| H A D | platsmp.c | 39 smp_wmb(); in versatile_write_cpu_release()
|
| /linux/tools/arch/riscv/include/asm/ |
| H A D | barrier.h | 24 #define smp_wmb() RISCV_FENCE(w, w) macro
|
| /linux/tools/memory-model/Documentation/ |
| H A D | recipes.txt | 294 It is usually better to use smp_store_release() instead of smp_wmb() 296 smp_wmb() and smp_rmb() APIs are still heavily used, so it is important 303 smp_wmb(); 314 The smp_wmb() macro orders prior stores against later stores, and the 323 smp_wmb(); 341 * smp_wmb() (B) smp_mb() (D) 345 The B/C pairing is an example of the MP pattern using smp_wmb() on the 348 Of course, given that smp_mb() is strictly stronger than either smp_wmb() 350 smp_wmb() would also work with smp_mb() replacing either or both of the 396 * smp_wmb() (B) smp_mb() (D)
|
| /linux/arch/xtensa/kernel/ |
| H A D | process.c | 95 smp_wmb(); in local_coprocessors_flush_release_all() 116 smp_wmb(); in local_coprocessor_release_all()
|
| /linux/arch/arm/mach-mvebu/ |
| H A D | platsmp-a9.c | 42 smp_wmb(); in mvebu_cortex_a9_boot_secondary()
|