]> git.itanic.dy.fi Git - linux-stable/commitdiff
drm/i915: unpin on error in intel_vgpu_shadow_mm_pin()
authorDan Carpenter <error27@gmail.com>
Tue, 15 Nov 2022 13:15:18 +0000 (16:15 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 12 Jan 2023 10:59:16 +0000 (11:59 +0100)
[ Upstream commit 3792fc508c095abd84b10ceae12bd773e61fdc36 ]

Call intel_vgpu_unpin_mm() on this error path.

Fixes: 418741480809 ("drm/i915/gvt: Adding ppgtt to GVT GEM context after shadow pdps settled.")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/Y3OQ5tgZIVxyQ/WV@kili
Reviewed-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/i915/gvt/scheduler.c

index 1bb1be5c48c847e1ef0c9a681400c5c664b8e781..0291d42cfba8df4eb2f3323421a68b4fc56dc927 100644 (file)
@@ -694,6 +694,7 @@ intel_vgpu_shadow_mm_pin(struct intel_vgpu_workload *workload)
 
        if (workload->shadow_mm->type != INTEL_GVT_MM_PPGTT ||
            !workload->shadow_mm->ppgtt_mm.shadowed) {
+               intel_vgpu_unpin_mm(workload->shadow_mm);
                gvt_vgpu_err("workload shadow ppgtt isn't ready\n");
                return -EINVAL;
        }