|
@@ -353,7 +353,8 @@ int ttm_bo_move_memcpy(struct ttm_buffer_object *bo,
|
|
* Don't move nonexistent data. Clear destination instead.
|
|
* Don't move nonexistent data. Clear destination instead.
|
|
*/
|
|
*/
|
|
if (old_iomap == NULL &&
|
|
if (old_iomap == NULL &&
|
|
- (ttm == NULL || ttm->state == tt_unpopulated)) {
|
|
|
|
|
|
+ (ttm == NULL || (ttm->state == tt_unpopulated &&
|
|
|
|
+ !(ttm->page_flags & TTM_PAGE_FLAG_SWAPPED)))) {
|
|
memset_io(new_iomap, 0, new_mem->num_pages*PAGE_SIZE);
|
|
memset_io(new_iomap, 0, new_mem->num_pages*PAGE_SIZE);
|
|
goto out2;
|
|
goto out2;
|
|
}
|
|
}
|