From: Keith Busch <kbusch@xxxxxxxxxx> Various fields of the dma pool are set in different places. Move it all to one function. Signed-off-by: Keith Busch <kbusch@xxxxxxxxxx> --- mm/dmapool.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mm/dmapool.c b/mm/dmapool.c index 0a443c8120f62..6862b4e763891 100644 --- a/mm/dmapool.c +++ b/mm/dmapool.c @@ -202,6 +202,11 @@ static void pool_initialise_page(struct dma_pool *pool, struct dma_page *page) unsigned int offset = 0; unsigned int next_boundary = pool->boundary; +#ifdef DMAPOOL_DEBUG + memset(page->vaddr, POOL_POISON_FREED, pool->allocation); +#endif + page->in_use = 0; + page->offset = 0; do { unsigned int next = offset + pool->size; if (unlikely((next + pool->size) >= next_boundary)) { @@ -226,12 +231,7 @@ static struct dma_page *pool_alloc_page(struct dma_pool *pool, gfp_t mem_flags) kfree(page); return NULL; } -#ifdef DMAPOOL_DEBUG - memset(page->vaddr, POOL_POISON_FREED, pool->allocation); -#endif pool_initialise_page(pool, page); - page->in_use = 0; - page->offset = 0; return page; } -- 2.30.2