Home
last modified time | relevance | path

Searched refs:barrier (Results 1 – 25 of 437) sorted by relevance

12345678910>>...18

/linux/include/linux/
A Dspinlock_up.h32 barrier(); in arch_spin_lock()
40 barrier(); in arch_spin_trylock()
47 barrier(); in arch_spin_unlock()
54 #define arch_read_lock(lock) do { barrier(); (void)(lock); } while (0)
55 #define arch_write_lock(lock) do { barrier(); (void)(lock); } while (0)
56 #define arch_read_trylock(lock) ({ barrier(); (void)(lock); 1; })
57 #define arch_write_trylock(lock) ({ barrier(); (void)(lock); 1; })
58 #define arch_read_unlock(lock) do { barrier(); (void)(lock); } while (0)
59 #define arch_write_unlock(lock) do { barrier(); (void)(lock); } while (0)
64 # define arch_spin_lock(lock) do { barrier(); (void)(lock); } while (0)
[all …]
A Dpreempt.h216 barrier(); \
221 barrier(); \
232 barrier(); \
239 barrier(); \
253 barrier(); \
259 barrier(); \
269 barrier(); \
274 barrier(); \
286 #define preempt_disable() barrier()
289 #define preempt_enable() barrier()
[all …]
/linux/arch/arm64/include/asm/
A Dirqflags.h25 barrier(); in __daif_local_irq_enable()
27 barrier(); in __daif_local_irq_enable()
37 barrier(); in __pmr_local_irq_enable()
40 barrier(); in __pmr_local_irq_enable()
54 barrier(); in __daif_local_irq_disable()
56 barrier(); in __daif_local_irq_disable()
66 barrier(); in __pmr_local_irq_disable()
68 barrier(); in __pmr_local_irq_disable()
174 barrier(); in __daif_local_irq_restore()
176 barrier(); in __daif_local_irq_restore()
[all …]
A Dhardirq.h51 barrier(); \
57 barrier(); \
75 barrier(); \
83 barrier(); \
/linux/Documentation/scheduler/
A Dmembarrier.rst14 require each architecture to have a full memory barrier after coming from
15 user-space, before updating rq->curr. This barrier is implied by the sequence
16 rq_lock(); smp_mb__after_spinlock() in __schedule(). The barrier matches a full
17 barrier in the proximity of the membarrier system call exit, cf.
24 require each architecture to have a full memory barrier after updating rq->curr,
25 before returning to user-space. The schemes providing this barrier on the various
28 - alpha, arc, arm, hexagon, mips rely on the full barrier implied by
31 - arm64 relies on the full barrier implied by switch_to().
33 - powerpc, riscv, s390, sparc, x86 rely on the full barrier implied by
34 switch_mm(), if mm is not NULL; they rely on the full barrier implied
[all …]
/linux/tools/virtio/ringtest/
A Dmain.h92 #define barrier() asm volatile("" ::: "memory") macro
98 #define cpu_relax() barrier()
113 barrier(); in busy_wait()
133 barrier(); \
139 barrier(); \
143 #define smp_wmb() barrier()
163 barrier(); in __read_once_size()
165 barrier(); in __read_once_size()
177 barrier(); in __write_once_size()
179 barrier(); in __write_once_size()
/linux/arch/s390/include/asm/
A Dbarrier.h32 #define __rmb() barrier()
33 #define __wmb() barrier()
43 barrier(); \
51 barrier(); \
55 #define __smp_mb__before_atomic() barrier()
56 #define __smp_mb__after_atomic() barrier()
/linux/include/asm-generic/
A Dbarrier.h61 #define mb() barrier()
113 #define smp_mb() barrier()
117 #define smp_rmb() barrier()
121 #define smp_wmb() barrier()
182 #define smp_store_mb(var, value) do { WRITE_ONCE(var, value); barrier(); } while (0)
186 #define smp_mb__before_atomic() barrier()
190 #define smp_mb__after_atomic() barrier()
196 barrier(); \
205 barrier(); \
/linux/tools/perf/tests/
A Dsigtrap.c176 pthread_barrier_t *barrier = (pthread_barrier_t *)arg; in test_thread() local
180 pthread_barrier_wait(barrier); in test_thread()
189 static int run_test_threads(pthread_t *threads, pthread_barrier_t *barrier) in run_test_threads() argument
193 pthread_barrier_wait(barrier); in run_test_threads()
200 static int run_stress_test(int fd, pthread_t *threads, pthread_barrier_t *barrier) in run_stress_test() argument
208 ret = run_test_threads(threads, barrier); in run_stress_test()
239 pthread_barrier_t barrier; in test__sigtrap() local
248 pthread_barrier_init(&barrier, NULL, NUM_THREADS + 1); in test__sigtrap()
271 if (pthread_create(&threads[i], NULL, test_thread, &barrier)) { in test__sigtrap()
277 ret = run_stress_test(fd, threads, &barrier); in test__sigtrap()
[all …]
/linux/arch/powerpc/kernel/
A Dsmp-tbsync.c53 barrier(); in smp_generic_take_timebase()
59 barrier(); in smp_generic_take_timebase()
70 barrier(); in smp_generic_take_timebase()
96 barrier(); in start_contest()
99 barrier(); in start_contest()
104 barrier(); in start_contest()
125 barrier(); in smp_generic_give_timebase()
166 barrier(); in smp_generic_give_timebase()
/linux/arch/alpha/include/asm/
A Dirqflags.h35 barrier(); in arch_local_irq_disable()
41 barrier(); in arch_local_irq_save()
47 barrier(); in arch_local_irq_enable()
53 barrier(); in arch_local_irq_restore()
55 barrier(); in arch_local_irq_restore()
/linux/tools/virtio/asm/
A Dbarrier.h4 #define barrier() asm volatile("" ::: "memory") macro
6 #define virt_rmb() barrier()
7 #define virt_wmb() barrier()
13 barrier(); \
30 #error Please fill in barrier macros
/linux/tools/testing/selftests/bpf/prog_tests/
A Dmap_in_map.c11 pthread_barrier_t barrier; member
31 pthread_barrier_wait(&ctx->barrier); in update_map_fn()
39 pthread_barrier_wait(&ctx->barrier); in update_map_fn()
47 pthread_barrier_wait(&ctx->barrier); in update_map_fn()
62 pthread_barrier_wait(&ctx->barrier); in access_map_fn()
67 pthread_barrier_wait(&ctx->barrier); in access_map_fn()
106 pthread_barrier_init(&ctx.barrier, NULL, 2); in test_map_in_map_access()
/linux/tools/build/feature/
A Dtest-pthread-barrier.c7 pthread_barrier_t barrier; in main() local
9 pthread_barrier_init(&barrier, NULL, 1); in main()
10 pthread_barrier_wait(&barrier); in main()
11 return pthread_barrier_destroy(&barrier); in main()
/linux/arch/x86/include/asm/
A Dbarrier.h50 #define __dma_rmb() barrier()
51 #define __dma_wmb() barrier()
56 #define __smp_wmb() barrier()
62 barrier(); \
70 barrier(); \
/linux/drivers/md/dm-vdo/indexer/
A Dsparse-cache.c172 sema_init(&barrier->lock, 1); in initialize_threads_barrier()
173 barrier->arrived = 0; in initialize_threads_barrier()
174 barrier->thread_count = thread_count; in initialize_threads_barrier()
175 sema_init(&barrier->wait, 0); in initialize_threads_barrier()
201 __down(&barrier->lock); in enter_threads_barrier()
202 if (++barrier->arrived == barrier->thread_count) { in enter_threads_barrier()
207 up(&barrier->wait); in enter_threads_barrier()
209 barrier->arrived = 0; in enter_threads_barrier()
210 up(&barrier->lock); in enter_threads_barrier()
212 up(&barrier->lock); in enter_threads_barrier()
[all …]
/linux/tools/arch/x86/include/asm/
A Dbarrier.h27 #define smp_rmb() barrier()
28 #define smp_wmb() barrier()
35 barrier(); \
42 barrier(); \
/linux/tools/testing/selftests/powerpc/dscr/
A Ddscr_explicit_test.c92 pthread_barrier_t *barrier; member
103 err = pthread_barrier_wait(args->barrier); in dscr_explicit_random_thread()
136 pthread_barrier_t barrier; in dscr_explicit_random_test() local
140 FAIL_IF(pthread_barrier_init(&barrier, NULL, THREADS)); in dscr_explicit_random_test()
144 threads[i].barrier = &barrier; in dscr_explicit_random_test()
153 FAIL_IF(pthread_barrier_destroy(&barrier)); in dscr_explicit_random_test()
A Ddscr_default_test.c76 pthread_barrier_t *barrier; member
88 err = pthread_barrier_wait(args->barrier); in dscr_default_random_thread()
125 pthread_barrier_t barrier; in dscr_default_random_test() local
132 FAIL_IF(pthread_barrier_init(&barrier, NULL, THREADS)); in dscr_default_random_test()
139 threads[i].barrier = &barrier; in dscr_default_random_test()
148 FAIL_IF(pthread_barrier_destroy(&barrier)); in dscr_default_random_test()
/linux/arch/parisc/include/asm/
A Dbarrier.h22 #define mb() barrier()
23 #define rmb() barrier()
24 #define wmb() barrier()
25 #define dma_rmb() barrier()
26 #define dma_wmb() barrier()
/linux/arch/sparc/include/asm/
A Dbarrier_64.h44 barrier(); \
52 barrier(); \
56 #define __smp_mb__before_atomic() barrier()
57 #define __smp_mb__after_atomic() barrier()
/linux/arch/arm/include/asm/
A Dbarrier.h70 #define mb() barrier()
71 #define rmb() barrier()
72 #define wmb() barrier()
73 #define dma_rmb() barrier()
74 #define dma_wmb() barrier()
/linux/arch/arm/mach-rpc/
A Dtime.c37 barrier (); in ioc_timer_read()
39 barrier (); in ioc_timer_read()
41 barrier (); in ioc_timer_read()
43 barrier (); in ioc_timer_read()
/linux/tools/testing/selftests/perf_events/
A Dsigtrap_threads.c89 pthread_barrier_t *barrier = (pthread_barrier_t *)arg; in test_thread() local
94 pthread_barrier_wait(barrier); in test_thread()
114 pthread_barrier_t barrier; in FIXTURE() local
137 pthread_barrier_init(&self->barrier, NULL, NUM_THREADS + 1); in FIXTURE_SETUP()
139 ASSERT_EQ(pthread_create(&self->threads[i], NULL, test_thread, &self->barrier), 0); in FIXTURE_SETUP()
144 pthread_barrier_destroy(&self->barrier); in FIXTURE_TEARDOWN()
154 pthread_barrier_wait(&self->barrier); in run_test_threads()
225 pthread_barrier_wait(&self->barrier); in TEST_F()
/linux/Documentation/
A Dmemory-barriers.txt588 <write barrier>
618 <write barrier>
740 barrier();
744 barrier();
753 barrier();
950 a release barrier, a read barrier, or a general barrier. Similarly a
952 with a write barrier, an acquire barrier, a release barrier, or a
997 <write barrier> \ <read barrier>
1389 <general barrier> <read barrier>
1538 barrier();
[all …]

Completed in 38 milliseconds

12345678910>>...18