Re: [PATCH] drm/i915: Prevent bonded requests from overtaking each other on preemption

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 20/09/2019 15:57, Chris Wilson wrote:
Quoting Chris Wilson (2019-09-20 09:36:24)
Force bonded requests to run on distinct engines so that they cannot be
shuffled onto the same engine where timeslicing will reverse the order.
A bonded request will often wait on a semaphore signaled by its master,
creating an implicit dependency -- if we ignore that implicit dependency
and allow the bonded request to run on the same engine and before its
master, we will cause a GPU hang.

Thinking more, it should not directly cause a GPU hang, as the stuck request
should be timesliced away, and each preemption should be enough to keep
hangcheck at bay (though we have evidence it may not). So at best it runs
at half-speed, at worst a third (if my model is correct).

But I think it is still correct to do since we don't have the coupling information on re-submit. Hm.. but don't we need to prevent slave from changing engines as well?

Regards,

Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux