]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blobdiff - drivers/gpu/drm/i915/gvt/gtt.c
Merge tag 'drm-intel-next-2019-04-17' of git://anongit.freedesktop.org/drm/drm-intel...
[mirror_ubuntu-eoan-kernel.git] / drivers / gpu / drm / i915 / gvt / gtt.c
index 9814773882ec2b875ae2db00a22768deed72c618..c2f7d20f634691c343059b9cb1ac69931e3f81b7 100644 (file)
@@ -2504,6 +2504,7 @@ static void clean_spt_oos(struct intel_gvt *gvt)
        list_for_each_safe(pos, n, &gtt->oos_page_free_list_head) {
                oos_page = container_of(pos, struct intel_vgpu_oos_page, list);
                list_del(&oos_page->list);
+               free_page((unsigned long)oos_page->mem);
                kfree(oos_page);
        }
 }
@@ -2524,6 +2525,12 @@ static int setup_spt_oos(struct intel_gvt *gvt)
                        ret = -ENOMEM;
                        goto fail;
                }
+               oos_page->mem = (void *)__get_free_pages(GFP_KERNEL, 0);
+               if (!oos_page->mem) {
+                       ret = -ENOMEM;
+                       kfree(oos_page);
+                       goto fail;
+               }
 
                INIT_LIST_HEAD(&oos_page->list);
                INIT_LIST_HEAD(&oos_page->vm_list);