|
@@ -304,9 +304,9 @@ void mempool_free(void *element, mempool_t *pool)
|
|
|
* ensures that there will be frees which return elements to the
|
|
|
* pool waking up the waiters.
|
|
|
*/
|
|
|
- if (pool->curr_nr < pool->min_nr) {
|
|
|
+ if (unlikely(pool->curr_nr < pool->min_nr)) {
|
|
|
spin_lock_irqsave(&pool->lock, flags);
|
|
|
- if (pool->curr_nr < pool->min_nr) {
|
|
|
+ if (likely(pool->curr_nr < pool->min_nr)) {
|
|
|
add_element(pool, element);
|
|
|
spin_unlock_irqrestore(&pool->lock, flags);
|
|
|
wake_up(&pool->wait);
|