[Intel-gfx] [PATCH v2 2/3] drm/i915: add a dedicated workqueue inside drm_i915_private

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Wed May 24 11:05:30 UTC 2023


On 24/05/2023 12:00, Tvrtko Ursulin wrote:
> 
> On 24/05/2023 10:05, Luca Coelho wrote:

8<

>>       if (pool_free_older_than(pool, HZ))
>> -        schedule_delayed_work(&pool->work,
>> -                      round_jiffies_up_relative(HZ));
>> +        queue_delayed_work(gt->i915->unordered_wq, &pool->work,
>> +                   round_jiffies_up_relative(HZ));
>>   }
>>   static void pool_retire(struct i915_active *ref)
>> @@ -99,6 +100,7 @@ static void pool_retire(struct i915_active *ref)
>>       struct intel_gt_buffer_pool_node *node =
>>           container_of(ref, typeof(*node), active);
>>       struct intel_gt_buffer_pool *pool = node->pool;
>> +    struct intel_gt *gt = container_of(pool, struct intel_gt, 
>> buffer_pool);
> 
> ... although I am beginning to wonder if intel_gt_buffer_pool shouldn't 
> just gain a gt backpointer? That would decouple things more instead of 
> tying the implementation with intel_gt implicitly. Not a strong 
> direction though.

Never mind on this point, code already assumes this relationships for 
instance in node_create().

Regards,

Tvrtko


More information about the Intel-gfx mailing list