On 2017.03.08 22:08:08 +0000, Chris Wilson wrote: > commit 8f1117abb408 ("drm/i915/gvt: handle workload lifecycle properly") > includes some nonsense to retry a indefinite wait - i915_wait_request() > does not return until the request is completed when used from an > uninterruptible context. > > Fixes: 8f1117abb408 ("drm/i915/gvt: handle workload lifecycle properly" > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > Cc: Chuanxiao Dong <chuanxiao.dong@xxxxxxxxx> > Cc: Zhenyu Wang <zhenyuw@xxxxxxxxxxxxxxx> > Cc: Zhi Wang <zhi.a.wang@xxxxxxxxx> > --- > drivers/gpu/drm/i915/gvt/scheduler.c | 14 +------------- > 1 file changed, 1 insertion(+), 13 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gvt/scheduler.c b/drivers/gpu/drm/i915/gvt/scheduler.c > index cfd9f7a38c27..8024904c0d58 100644 > --- a/drivers/gpu/drm/i915/gvt/scheduler.c > +++ b/drivers/gpu/drm/i915/gvt/scheduler.c > @@ -465,19 +465,7 @@ static int workload_thread(void *priv) > > gvt_dbg_sched("ring id %d wait workload %p\n", > workload->ring_id, workload); > -retry: > - i915_wait_request(workload->req, > - 0, MAX_SCHEDULE_TIMEOUT); > - /* I915 has replay mechanism and a request will be replayed > - * if there is i915 reset. So the seqno will be updated anyway. > - * If the seqno is not updated yet after waiting, which means > - * the replay may still be in progress and we can wait again. > - */ > - if (!i915_gem_request_completed(workload->req)) { > - gvt_dbg_sched("workload %p not completed, wait again\n", > - workload); > - goto retry; > - } > + i915_wait_request(workload->req, 0, MAX_SCHEDULE_TIMEOUT); > > complete: > gvt_dbg_sched("will complete workload %p, status: %d\n", > -- Applied to gvt-fixes. Thanks! -- Open Source Technology Center, Intel ltd. $gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx