atomics: Remove redundant barrier()'s
Remove the redundant barrier() after the fence as agreed in previous discussion here: https://lists.gnu.org/archive/html/qemu-devel/2016-04/msg00489.html Signed-off-by: Pranith Kumar <bobby.prani@gmail.com> Message-Id: <20160824204424.14041-3-bobby.prani@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
		
							parent
							
								
									c2cd627ddb
								
							
						
					
					
						commit
						705ac1ca53
					
				| @ -72,16 +72,16 @@ | ||||
|  * Add one here, and similarly in smp_rmb() and smp_read_barrier_depends(). | ||||
|  */ | ||||
| 
 | ||||
| #define smp_mb()    ({ barrier(); __atomic_thread_fence(__ATOMIC_SEQ_CST); barrier(); }) | ||||
| #define smp_wmb()   ({ barrier(); __atomic_thread_fence(__ATOMIC_RELEASE); barrier(); }) | ||||
| #define smp_rmb()   ({ barrier(); __atomic_thread_fence(__ATOMIC_ACQUIRE); barrier(); }) | ||||
| #define smp_mb()    ({ barrier(); __atomic_thread_fence(__ATOMIC_SEQ_CST); }) | ||||
| #define smp_wmb()   ({ barrier(); __atomic_thread_fence(__ATOMIC_RELEASE); }) | ||||
| #define smp_rmb()   ({ barrier(); __atomic_thread_fence(__ATOMIC_ACQUIRE); }) | ||||
| 
 | ||||
| /* Most compilers currently treat consume and acquire the same, but really
 | ||||
|  * no processors except Alpha need a barrier here.  Leave it in if | ||||
|  * using Thread Sanitizer to avoid warnings, otherwise optimize it away. | ||||
|  */ | ||||
| #if defined(__SANITIZE_THREAD__) | ||||
| #define smp_read_barrier_depends() ({ barrier(); __atomic_thread_fence(__ATOMIC_CONSUME); barrier(); }) | ||||
| #define smp_read_barrier_depends() ({ barrier(); __atomic_thread_fence(__ATOMIC_CONSUME); }) | ||||
| #elsif defined(__alpha__) | ||||
| #define smp_read_barrier_depends()   asm volatile("mb":::"memory") | ||||
| #else | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Pranith Kumar
						Pranith Kumar