[Intel-gfx] [PATCH 06/20] drm/i915: Handle log buffer flush interrupt event from GuC
Goel, Akash
akash.goel at intel.com
Fri Aug 12 06:44:28 UTC 2016
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
dev_priv->guc.events_work
Best regards
Akash
> -Chris
>
More information about the Intel-gfx
mailing list