diff --git a/[refs] b/[refs] index fa0c59eb627f..a109188b1620 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d65bfacb046f3df8aa11a9cb9b6e448f6171174d +refs/heads/master: ea05c8444e451f1cfbf78c68733e717ad7b8602b diff --git a/trunk/mm/dmapool.c b/trunk/mm/dmapool.c index 3df063706f53..4df2de77e069 100644 --- a/trunk/mm/dmapool.c +++ b/trunk/mm/dmapool.c @@ -311,6 +311,8 @@ void *dma_pool_alloc(struct dma_pool *pool, gfp_t mem_flags, size_t offset; void *retval; + might_sleep_if(mem_flags & __GFP_WAIT); + spin_lock_irqsave(&pool->lock, flags); restart: list_for_each_entry(page, &pool->page_list, page_list) {