From 70e3d43151c60c1cca104b0baea19d44ba68d6f8 Mon Sep 17 00:00:00 2001 From: Konrad Rzeszutek Wilk Date: Wed, 4 Jan 2012 16:35:14 -0500 Subject: [PATCH] --- yaml --- r: 282733 b: refs/heads/master c: 36d7c537c3082a492ff851fb0da40ae3d7c5565d h: refs/heads/master i: 282731: c5df1bc86e49c7b80d89e49a8a49f1b82418fa0e v: v3 --- [refs] | 2 +- trunk/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index e9e8db83e6c0..0cf07fec7453 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3000bf393302a8c786e9ebfc778050cb0d6226c4 +refs/heads/master: 36d7c537c3082a492ff851fb0da40ae3d7c5565d diff --git a/trunk/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c b/trunk/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c index 6678abca0d98..6c06d0b601f9 100644 --- a/trunk/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c +++ b/trunk/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c @@ -384,7 +384,9 @@ static void ttm_dma_pages_put(struct dma_pool *pool, struct list_head *d_pages, { struct dma_page *d_page, *tmp; - if (npages && set_pages_array_wb(pages, npages)) + /* Don't set WB on WB page pool. */ + if (npages && !(pool->type & IS_CACHED) && + set_pages_array_wb(pages, npages)) pr_err(TTM_PFX "%s: Failed to set %d pages to wb!\n", pool->dev_name, npages); @@ -396,7 +398,8 @@ static void ttm_dma_pages_put(struct dma_pool *pool, struct list_head *d_pages, static void ttm_dma_page_put(struct dma_pool *pool, struct dma_page *d_page) { - if (set_pages_array_wb(&d_page->p, 1)) + /* Don't set WB on WB page pool. */ + if (!(pool->type & IS_CACHED) && set_pages_array_wb(&d_page->p, 1)) pr_err(TTM_PFX "%s: Failed to set %d pages to wb!\n", pool->dev_name, 1);