drm/nouveau: fix regression causing ttm to not be able to evict vram

TTM assumes an error condition from man->func->get_node() means that
something went horribly wrong, and causes it to bail.

The driver is supposed to return 0, and leave mm_node == NULL to
signal that it couldn't allocate any memory.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>

authored by Ben Skeggs and committed by Dave Airlie ef1b2871 fb62c00a

+5 -3
+4 -2
drivers/gpu/drm/nouveau/nouveau_mem.c
··· 725 725 ret = vram->get(dev, mem->num_pages << PAGE_SHIFT, 726 726 mem->page_alignment << PAGE_SHIFT, size_nc, 727 727 (nvbo->tile_flags >> 8) & 0xff, &node); 728 - if (ret) 729 - return ret; 728 + if (ret) { 729 + mem->mm_node = NULL; 730 + return (ret == -ENOSPC) ? 0 : ret; 731 + } 730 732 731 733 node->page_shift = 12; 732 734 if (nvbo->vma.node)
+1 -1
drivers/gpu/drm/nouveau/nouveau_mm.c
··· 123 123 return 0; 124 124 } 125 125 126 - return -ENOMEM; 126 + return -ENOSPC; 127 127 } 128 128 129 129 int