mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	locking/atomic, arch/arc: Fix build
Resolve conflict between commits:fbffe892e5("locking/atomic, arch/arc: Implement atomic_fetch_{add,sub,and,andnot,or,xor}()") and:ed6aefed72("Revert "ARCv2: spinlock/rwlock/atomics: Delayed retry of failed SCOND with exponential backoff"") Reported-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Nigel Topham <ntopham@synopsys.com> Cc: Noam Camus <noamc@ezchip.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Vineet Gupta <vgupta@synopsys.com> Cc: linux-kernel@vger.kernel.org Cc: linux-snps-arc@lists.infradead.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
		
							parent
							
								
									86a3b5f34f
								
							
						
					
					
						commit
						4aef66c8ae
					
				
					 1 changed files with 0 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -71,7 +71,6 @@ static inline int atomic_##op##_return(int i, atomic_t *v)		\
 | 
			
		|||
static inline int atomic_fetch_##op(int i, atomic_t *v)			\
 | 
			
		||||
{									\
 | 
			
		||||
	unsigned int val, orig;						\
 | 
			
		||||
	SCOND_FAIL_RETRY_VAR_DEF                                        \
 | 
			
		||||
									\
 | 
			
		||||
	/*								\
 | 
			
		||||
	 * Explicit full memory barrier needed before/after as		\
 | 
			
		||||
| 
						 | 
				
			
			@ -84,11 +83,8 @@ static inline int atomic_fetch_##op(int i, atomic_t *v)			\
 | 
			
		|||
	"	" #asm_op " %[val], %[orig], %[i]	\n"		\
 | 
			
		||||
	"	scond   %[val], [%[ctr]]		\n"		\
 | 
			
		||||
	"						\n"		\
 | 
			
		||||
	SCOND_FAIL_RETRY_ASM						\
 | 
			
		||||
									\
 | 
			
		||||
	: [val]	"=&r"	(val),						\
 | 
			
		||||
	  [orig] "=&r" (orig)						\
 | 
			
		||||
	  SCOND_FAIL_RETRY_VARS						\
 | 
			
		||||
	: [ctr]	"r"	(&v->counter),					\
 | 
			
		||||
	  [i]	"ir"	(i)						\
 | 
			
		||||
	: "cc");							\
 | 
			
		||||
| 
						 | 
				
			
			@ -199,10 +195,6 @@ ATOMIC_OPS(andnot, &= ~, bic)
 | 
			
		|||
ATOMIC_OPS(or, |=, or)
 | 
			
		||||
ATOMIC_OPS(xor, ^=, xor)
 | 
			
		||||
 | 
			
		||||
#undef SCOND_FAIL_RETRY_VAR_DEF
 | 
			
		||||
#undef SCOND_FAIL_RETRY_ASM
 | 
			
		||||
#undef SCOND_FAIL_RETRY_VARS
 | 
			
		||||
 | 
			
		||||
#else /* CONFIG_ARC_PLAT_EZNPS */
 | 
			
		||||
 | 
			
		||||
static inline int atomic_read(const atomic_t *v)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue