[Intel-gfx] [PATCH v9 4/6] drm/i915: Interrupt driven fences

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Tue Jun 7 12:19:18 UTC 2016


On 07/06/16 13:02, Maarten Lankhorst wrote:
> Op 02-06-16 om 15:25 schreef Tvrtko Ursulin:

[snip]

>>> +        return;
>>> +
>>> +    if (!fence_locked)
>>> +        spin_lock_irqsave(&engine->fence_lock, flags);
>>
>> Not called from hard irq context so can be just spin_lock_irq.
>>
>> But if you agree to go with the tasklet it would then be spin_lock_bh.
> fence is always spin_lock_irq, if this requires _bh then it can't go into the tasklet.

No if fence API requires the _irq versions then it is fine, they 
supersede the _bh variants.

Also it doesn't have to use the tasklet, I was just suggesting it as 
lighter weight for lower latency since nothing seems to need 
process/sleeping context anyway.

Main thing is that signaling is not serialized across engines by a 
single worker.

Regards,

Tvrtko

P.S. Please try to put newlines between quoted text and your replies? It 
will be easier to find your comments that way.


More information about the Intel-gfx mailing list