summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/ttm
diff options
context:
space:
mode:
authorJerome Glisse <jglisse@redhat.com>2011-11-03 01:22:39 -0400
committerDave Airlie <airlied@redhat.com>2011-12-06 10:38:57 +0000
commit5e2656804a34f58c2bf557465ab77f8a26a500eb (patch)
tree1da5f23cbe2d67150c5998dc74c4647f004f918d /drivers/gpu/drm/ttm
parenta14af87b0b6f5c1d44c1adaa07f1bd347f81dc04 (diff)
drm/ttm: use ttm put pages function to properly restore cache attribute
On failure we need to make sure the page we free has wb cache attribute. Do this pas call the proper ttm page helper function. Signed-off-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
Diffstat (limited to 'drivers/gpu/drm/ttm')
-rw-r--r--drivers/gpu/drm/ttm/ttm_tt.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/ttm/ttm_tt.c b/drivers/gpu/drm/ttm/ttm_tt.c
index f0c5ffd446d9..90527a2ce04c 100644
--- a/drivers/gpu/drm/ttm/ttm_tt.c
+++ b/drivers/gpu/drm/ttm/ttm_tt.c
@@ -90,7 +90,10 @@ static struct page *__ttm_tt_get_page(struct ttm_tt *ttm, int index)
}
return p;
out_err:
- put_page(p);
+ INIT_LIST_HEAD(&h);
+ list_add(&p->lru, &h);
+ ttm_put_pages(&h, 1, ttm->page_flags,
+ ttm->caching_state, &ttm->dma_address[index]);
return NULL;
}