forked from mirrors/linux
		
	mm, page_alloc: remove unnecessary taking of a seqlock when cpusets are disabled
There is a seqcounter that protects against spurious allocation failures when a task is changing the allowed nodes in a cpuset. There is no need to check the seqcounter until a cpuset exists. Signed-off-by: Mel Gorman <mgorman@techsingularity.net> Acked-by: Christoph Lameter <cl@linux.com> Acked-by: David Rientjes <rientjes@google.com> Acked-by: Vlastimil Babka <vbabka@suse.cz> Acked-by: Michal Hocko <mhocko@suse.com> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Cc: Vitaly Wool <vitalywool@gmail.com> Cc: Rik van Riel <riel@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
		
							parent
							
								
									c9ab0c4fbe
								
							
						
					
					
						commit
						46e700abc4
					
				
					 1 changed files with 6 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -104,6 +104,9 @@ extern void cpuset_print_current_mems_allowed(void);
 | 
			
		|||
 */
 | 
			
		||||
static inline unsigned int read_mems_allowed_begin(void)
 | 
			
		||||
{
 | 
			
		||||
	if (!cpusets_enabled())
 | 
			
		||||
		return 0;
 | 
			
		||||
 | 
			
		||||
	return read_seqcount_begin(¤t->mems_allowed_seq);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -115,6 +118,9 @@ static inline unsigned int read_mems_allowed_begin(void)
 | 
			
		|||
 */
 | 
			
		||||
static inline bool read_mems_allowed_retry(unsigned int seq)
 | 
			
		||||
{
 | 
			
		||||
	if (!cpusets_enabled())
 | 
			
		||||
		return false;
 | 
			
		||||
 | 
			
		||||
	return read_seqcount_retry(¤t->mems_allowed_seq, seq);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue