Message ID | 20190217161159.815-1-chris@chris-wilson.co.uk (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/9] drm/i915: Make user contexts bannable again! | expand |
Chris Wilson <chris@chris-wilson.co.uk> writes: > Since moving the bannable boolean into the context flags, we lost the > default setting of contexts being bannable. Oops. > > Sadly because we have multi-level banning scheme, our testcase for being > banned cannot distinguish between the expected ban on the context and > the applied banned via the fd. > > Fixes: 6095868a271d ("drm/i915: Complete kerneldoc for struct i915_gem_context") > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > Cc: <stable@vger.kernel.org> # v4.11+ > --- > drivers/gpu/drm/i915/i915_gem_context.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c > index 280813a4bf82..102866967998 100644 > --- a/drivers/gpu/drm/i915/i915_gem_context.c > +++ b/drivers/gpu/drm/i915/i915_gem_context.c > @@ -364,6 +364,7 @@ __create_hw_context(struct drm_i915_private *dev_priv, > list_add_tail(&ctx->link, &dev_priv->contexts.list); > ctx->i915 = dev_priv; > ctx->sched.priority = I915_USER_PRIORITY(I915_PRIORITY_NORMAL); > + ctx->user_flags = BIT(UCONTEXT_BANNABLE); > But it is there, after setting the ring size. -Mika > for (n = 0; n < ARRAY_SIZE(ctx->__engine); n++) > intel_context_init(&ctx->__engine[n], ctx, dev_priv->engine[n]); > -- > 2.20.1
Quoting Mika Kuoppala (2019-02-18 10:45:32) > Chris Wilson <chris@chris-wilson.co.uk> writes: > > > Since moving the bannable boolean into the context flags, we lost the > > default setting of contexts being bannable. Oops. > > > > Sadly because we have multi-level banning scheme, our testcase for being > > banned cannot distinguish between the expected ban on the context and > > the applied banned via the fd. > > > > Fixes: 6095868a271d ("drm/i915: Complete kerneldoc for struct i915_gem_context") > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> > > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> > > Cc: <stable@vger.kernel.org> # v4.11+ > > --- > > drivers/gpu/drm/i915/i915_gem_context.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c > > index 280813a4bf82..102866967998 100644 > > --- a/drivers/gpu/drm/i915/i915_gem_context.c > > +++ b/drivers/gpu/drm/i915/i915_gem_context.c > > @@ -364,6 +364,7 @@ __create_hw_context(struct drm_i915_private *dev_priv, > > list_add_tail(&ctx->link, &dev_priv->contexts.list); > > ctx->i915 = dev_priv; > > ctx->sched.priority = I915_USER_PRIORITY(I915_PRIORITY_NORMAL); > > + ctx->user_flags = BIT(UCONTEXT_BANNABLE); > > > > But it is there, after setting the ring size. Hmm. However my mesa context didn't get banned until the fd did, which is not what was intended. Odd. So which is preferrable setting user_flags explicitly or using the helper, probably the latter since that's the style we already have. -Chris
Hi, [This is an automated email] This commit has been processed because it contains a "Fixes:" tag, fixing commit: 6095868a271d drm/i915: Complete kerneldoc for struct i915_gem_context. The bot has tested the following trees: v4.20.11, v4.19.24, v4.14.102. v4.20.11: Failed to apply! Possible dependencies: 7651a4452ddf ("drm/i915: Reserve some priority bits for internal use") v4.19.24: Failed to apply! Possible dependencies: 7651a4452ddf ("drm/i915: Reserve some priority bits for internal use") v4.14.102: Failed to apply! Possible dependencies: 0a53bc07f044 ("drm/i915/gvt: Separate cmd scan from request allocation") 0cce2823ed37 ("drm/i915/gvt: Refine error handling for prepare_execlist_workload") 1406a14b0ed9 ("drm/i915/gvt: Introduce intel_vgpu_submission") 1603660b3342 ("drm/i915/gvt: set max priority for gvt context") 465c403cb508 ("drm/i915: introduce simple gemfs") 54cff6479fd8 ("drm/i915/gvt: Make elsp_dwords in the right order") 7651a4452ddf ("drm/i915: Reserve some priority bits for internal use") 9a9829e9eb8b ("drm/i915/gvt: Move workload cache init/clean into intel_vgpu_{setup, clean}_submission()") a3cfdca920b2 ("drm/i915/gvt: Add error handling for intel_gvt_scan_and_shadow_workload") b7268c5eed0a ("drm/i915: Pack params to engine->schedule() into a struct") d8235b5e5584 ("drm/i915/gvt: Move common workload preparation into prepare_workload()") e61e0f51ba79 ("drm/i915: Rename drm_i915_gem_request to i915_request") e91ef99b9543 ("drm/i915/selftests: Remember to create the fake preempt context") f2880e04f3a5 ("drm/i915/gvt: Move request alloc to dispatch_workload path only") How should we proceed with this patch? -- Thanks, Sasha
diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c index 280813a4bf82..102866967998 100644 --- a/drivers/gpu/drm/i915/i915_gem_context.c +++ b/drivers/gpu/drm/i915/i915_gem_context.c @@ -364,6 +364,7 @@ __create_hw_context(struct drm_i915_private *dev_priv, list_add_tail(&ctx->link, &dev_priv->contexts.list); ctx->i915 = dev_priv; ctx->sched.priority = I915_USER_PRIORITY(I915_PRIORITY_NORMAL); + ctx->user_flags = BIT(UCONTEXT_BANNABLE); for (n = 0; n < ARRAY_SIZE(ctx->__engine); n++) intel_context_init(&ctx->__engine[n], ctx, dev_priv->engine[n]);
Since moving the bannable boolean into the context flags, we lost the default setting of contexts being bannable. Oops. Sadly because we have multi-level banning scheme, our testcase for being banned cannot distinguish between the expected ban on the context and the applied banned via the fd. Fixes: 6095868a271d ("drm/i915: Complete kerneldoc for struct i915_gem_context") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Cc: <stable@vger.kernel.org> # v4.11+ --- drivers/gpu/drm/i915/i915_gem_context.c | 1 + 1 file changed, 1 insertion(+)