[Intel-gfx] [PATCH 06/20] drm/i915: Handle log buffer flush interrupt event from GuC

Chris Wilson chris at chris-wilson.co.uk
Fri Aug 12 06:51:48 UTC 2016


On Fri, Aug 12, 2016 at 12:14:28PM +0530, Goel, Akash wrote:
> 
> 
> On 8/12/2016 11:58 AM, Chris Wilson wrote:
> >On Fri, Aug 12, 2016 at 11:55:09AM +0530, akash.goel at intel.com wrote:
> >>diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> >>index 0fcd1c0..fc2da32 100644
> >>--- a/drivers/gpu/drm/i915/i915_drv.c
> >>+++ b/drivers/gpu/drm/i915/i915_drv.c
> >> static void i915_workqueues_cleanup(struct drm_i915_private *dev_priv)
> >> {
> >>+	if (HAS_GUC_SCHED(dev_priv))
> >>+		destroy_workqueue(dev_priv->guc.log.wq);
> >
> >if (dev_priv->guc.log.wq)
> >	destroy_workqueue(dev_priv->guc.log.wq);
> >
> >This shouldn't be here, but in guc teardown.
> >
> >Likewise this is
> >
> Fine will move it to GuC teardown.
> 
> >>@@ -770,8 +770,20 @@ static int i915_workqueues_init(struct drm_i915_private *dev_priv)
> >> 	if (dev_priv->hotplug.dp_wq == NULL)
> >> 		goto out_free_wq;
> >>
> >>+	if (HAS_GUC_SCHED(dev_priv)) {
> >>+		/* Need a dedicated wq to process log buffer flush interrupts
> >>+		 * from GuC without much delay so as to avoid any loss of logs.
> >>+		 */
> >>+		dev_priv->guc.log.wq =
> >
> >creating guc specific wq, not drm_i915_private's. They can even be
> >managed by guc.log?
> Sorry for the inconsistency here, but didn't get your question.
> 	dev_priv->guc.log.wq

Just somewhere inside guc, I was just noting that you probably already
have setup/teardown for dev_priv->guc.log itself.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list