diff options
Diffstat (limited to 'mm/percpu.c')
| -rw-r--r-- | mm/percpu.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/mm/percpu.c b/mm/percpu.c index 5696039b5c07..60a6488e9e6d 100644 --- a/mm/percpu.c +++ b/mm/percpu.c @@ -1011,8 +1011,11 @@ area_found:  		mutex_unlock(&pcpu_alloc_mutex);  	} -	if (chunk != pcpu_reserved_chunk) +	if (chunk != pcpu_reserved_chunk) { +		spin_lock_irqsave(&pcpu_lock, flags);  		pcpu_nr_empty_pop_pages -= occ_pages; +		spin_unlock_irqrestore(&pcpu_lock, flags); +	}  	if (pcpu_nr_empty_pop_pages < PCPU_EMPTY_POP_PAGES_LOW)  		pcpu_schedule_balance_work();  | 
