rcu: Fix wrong check in list_splice_init_rcu()
If the list to be spliced is empty, then list_splice_init_rcu() has nothing to do. Unfortunately, list_splice_init_rcu() does not check the list to be spliced; it instead checks the list to be spliced into. This results in memory leaks given current usage. This commit therefore fixes the empty-list check. Signed-off-by: Jan H. Schönherr <schnhrr@cs.tu-berlin.de> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
		
					parent
					
						
							
								cefcb60201
							
						
					
				
			
			
				commit
				
					
						7f70893173
					
				
			
		
					 1 changed files with 1 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -183,7 +183,7 @@ static inline void list_splice_init_rcu(struct list_head *list,
 | 
			
		|||
	struct list_head *last = list->prev;
 | 
			
		||||
	struct list_head *at = head->next;
 | 
			
		||||
 | 
			
		||||
	if (list_empty(head))
 | 
			
		||||
	if (list_empty(list))
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	/* "first" and "last" tracking list, so initialize it. */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue