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.
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx