diff options
Diffstat (limited to 'mm/mempool.c')
| -rw-r--r-- | mm/mempool.c | 13 | 
1 files changed, 7 insertions, 6 deletions
diff --git a/mm/mempool.c b/mm/mempool.c index b54f2c20e5e0..0ef8cc8d1602 100644 --- a/mm/mempool.c +++ b/mm/mempool.c @@ -111,7 +111,7 @@ static __always_inline void kasan_poison_element(mempool_t *pool, void *element)  		kasan_free_pages(element, (unsigned long)pool->pool_data);  } -static void kasan_unpoison_element(mempool_t *pool, void *element, gfp_t flags) +static void kasan_unpoison_element(mempool_t *pool, void *element)  {  	if (pool->alloc == mempool_alloc_slab || pool->alloc == mempool_kmalloc)  		kasan_unpoison_slab(element); @@ -127,12 +127,12 @@ static __always_inline void add_element(mempool_t *pool, void *element)  	pool->elements[pool->curr_nr++] = element;  } -static void *remove_element(mempool_t *pool, gfp_t flags) +static void *remove_element(mempool_t *pool)  {  	void *element = pool->elements[--pool->curr_nr];  	BUG_ON(pool->curr_nr < 0); -	kasan_unpoison_element(pool, element, flags); +	kasan_unpoison_element(pool, element);  	check_element(pool, element);  	return element;  } @@ -151,7 +151,7 @@ static void *remove_element(mempool_t *pool, gfp_t flags)  void mempool_exit(mempool_t *pool)  {  	while (pool->curr_nr) { -		void *element = remove_element(pool, GFP_KERNEL); +		void *element = remove_element(pool);  		pool->free(element, pool->pool_data);  	}  	kfree(pool->elements); @@ -213,6 +213,7 @@ EXPORT_SYMBOL(mempool_init_node);  /**   * mempool_init - initialize a memory pool + * @pool:      pointer to the memory pool that should be initialized   * @min_nr:    the minimum number of elements guaranteed to be   *             allocated for this pool.   * @alloc_fn:  user-defined element-allocation function. @@ -301,7 +302,7 @@ int mempool_resize(mempool_t *pool, int new_min_nr)  	spin_lock_irqsave(&pool->lock, flags);  	if (new_min_nr <= pool->min_nr) {  		while (new_min_nr < pool->curr_nr) { -			element = remove_element(pool, GFP_KERNEL); +			element = remove_element(pool);  			spin_unlock_irqrestore(&pool->lock, flags);  			pool->free(element, pool->pool_data);  			spin_lock_irqsave(&pool->lock, flags); @@ -387,7 +388,7 @@ repeat_alloc:  	spin_lock_irqsave(&pool->lock, flags);  	if (likely(pool->curr_nr)) { -		element = remove_element(pool, gfp_temp); +		element = remove_element(pool);  		spin_unlock_irqrestore(&pool->lock, flags);  		/* paired with rmb in mempool_free(), read comment there */  		smp_wmb();  |