| 
					
				 | 
			
			
				@@ -95,7 +95,7 @@ void gpr_stack_lockfree_destroy(gpr_stack_lockfree *stack) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   gpr_free(stack); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-void gpr_stack_lockfree_push(gpr_stack_lockfree *stack, int entry) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+int gpr_stack_lockfree_push(gpr_stack_lockfree *stack, int entry) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   lockfree_node head; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   lockfree_node newhead; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -112,6 +112,7 @@ void gpr_stack_lockfree_push(gpr_stack_lockfree *stack, int entry) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } while (!gpr_atm_rel_cas(&(stack->head.atm), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             head.atm, newhead.atm)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   /* Use rel_cas above to make sure that entry index is set properly */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  return head.atm == INVALID_ENTRY_INDEX; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 int gpr_stack_lockfree_pop(gpr_stack_lockfree *stack) { 
			 |