drm/ttm: Fix accounting error when fail to get pages for pool
authorXiangliang.Yu <Xiangliang.Yu@amd.com>
Wed, 16 Aug 2017 06:25:51 +0000 (14:25 +0800)
committerBen Hutchings <ben@decadent.org.uk>
Sun, 26 Nov 2017 13:51:04 +0000 (13:51 +0000)
commit 9afae2719273fa1d406829bf3498f82dbdba71c7 upstream.

When fail to get needed page for pool, need to put allocated pages
into pool. But current code has a miscalculation of allocated pages,
correct it.

Signed-off-by: Xiangliang.Yu <Xiangliang.Yu@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Monk Liu <monk.liu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/gpu/drm/ttm/ttm_page_alloc.c

index 508c64c..08f2fe7 100644 (file)
@@ -609,7 +609,7 @@ static void ttm_page_pool_fill_locked(struct ttm_page_pool *pool,
                        printk(KERN_ERR TTM_PFX
                               "Failed to fill pool (%p).", pool);
                        /* If we have any pages left put them to the pool. */
-                       list_for_each_entry(p, &pool->list, lru) {
+                       list_for_each_entry(p, &new_pages, lru) {
                                ++cpages;
                        }
                        list_splice(&new_pages, &pool->list);