[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 07:00:10 UTC 2016



On 8/12/2016 12:21 PM, Chris Wilson wrote:
> 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.

Fine, will move the dedicated wq creation/destruction in the
setup/teardown routines for guc.log.

Best Regards
Akash

> -Chris
>


More information about the Intel-gfx mailing list