[PATCH 3.2 17/61] drm/ttm: Fix accounting error when fail to get pages for pool

From: Ben Hutchings
Date: Tue Nov 21 2017 - 22:04:23 EST

3.2.96-rc1 review patch. If anyone has any objections, please let me know.


From: "Xiangliang.Yu" <Xiangliang.Yu@xxxxxxx>

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@xxxxxxx>
Reviewed-by: Christian KÃnig <christian.koenig@xxxxxxx>
Reviewed-by: Monk Liu <monk.liu@xxxxxxx>
Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
drivers/gpu/drm/ttm/ttm_page_alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/gpu/drm/ttm/ttm_page_alloc.c
+++ b/drivers/gpu/drm/ttm/ttm_page_alloc.c
@@ -609,7 +609,7 @@ static void ttm_page_pool_fill_locked(st
"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) {
list_splice(&new_pages, &pool->list);