OSDN Git Service

drm/i915: always pin hw_id for GVT context
authorZhenyu Wang <zhenyuw@linux.intel.com>
Mon, 11 Mar 2019 02:37:47 +0000 (10:37 +0800)
committerChris Wilson <chris@chris-wilson.co.uk>
Sun, 24 Mar 2019 11:28:09 +0000 (11:28 +0000)
Initially found issue with closed context debug check when pin
hw_id for GVT context, looks we should always pin hw_id for that
as GVT context is fixed for each vGPU life cycle, and we'd also
like to get pinned hw_id e.g for perf reason, etc.

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20190311023747.1426-1-zhenyuw@linux.intel.com
drivers/gpu/drm/i915/i915_gem_context.c

index 39ca3cb..e6f5946 100644 (file)
@@ -482,6 +482,13 @@ i915_gem_context_create_gvt(struct drm_device *dev)
        if (IS_ERR(ctx))
                goto out;
 
+       ret = i915_gem_context_pin_hw_id(ctx);
+       if (ret) {
+               context_close(ctx);
+               ctx = ERR_PTR(ret);
+               goto out;
+       }
+
        ctx->file_priv = ERR_PTR(-EBADF);
        i915_gem_context_set_closed(ctx); /* not user accessible */
        i915_gem_context_clear_bannable(ctx);