From: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>, Intel-gfx@lists.freedesktop.org
Cc: Xiaogang Li <xiaogang.li@intel.com>
Subject: Re: [Intel-gfx] [PATCH] drm/i915: Special handling for bonded requests
Date: Thu, 28 May 2020 11:20:07 +0100 [thread overview]
Message-ID: <8f1c20cb-b538-97c1-a953-772d75c232bd@linux.intel.com> (raw)
In-Reply-To: <159065984908.10651.3817818286053938468@build.alporthouse.com>
On 28/05/2020 10:57, Chris Wilson wrote:
> Quoting Tvrtko Ursulin (2020-05-27 09:53:22)
>> +static void
>> +mark_bonded_pair(struct i915_request *rq, struct i915_request *signal)
>> +{
>> + /*
>> + * Give (temporary) special meaning to a pair requests with requested
>> + * aligned start along the video engines.
>> + *
>> + * They should be non-preemptable and have all ELSP ports to themselves
>> + * to avoid any deadlocks caused by inversions.
>> + *
>> + * Gen11+
>> + */
>> + if (INTEL_GEN(rq->i915) < 11 ||
>> + rq->engine->class != VIDEO_DECODE_CLASS ||
>> + rq->engine->class != signal->engine->class)
>> + return;
>> +
>> + set_bit(I915_FENCE_FLAG_NOPREEMPT, &rq->fence.flags);
>> + set_bit(I915_FENCE_FLAG_NOPREEMPT, &signal->fence.flags);
>> +
>> + intel_context_set_single_submission(rq->context);
>> + intel_context_set_single_submission(signal->context);
>
> The thought that just popped into my head:
>
> This can be after signal is already submitted into ELSP[1].
Yep I knew that but thought it would still work.
Master in vcs0 port1, slave in vcs1 port0 or queued.
If queued that means at worst case another bonded pair is running on
same engines, so they should be able to complete.
If slave submitted to vcs1 port0 then it will stay there until whatever
is in vcs0 port0 finishes and lets master in.
Do you see a possibility for things to go bad?
Regards,
Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2020-05-28 10:20 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-27 8:53 [Intel-gfx] [PATCH] drm/i915: Special handling for bonded requests Tvrtko Ursulin
2020-05-27 9:20 ` Chris Wilson
2020-05-27 9:36 ` Tvrtko Ursulin
2020-05-27 10:05 ` Chris Wilson
2020-05-27 9:29 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2020-05-27 9:50 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2020-05-27 10:52 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2020-05-28 9:57 ` [Intel-gfx] [PATCH] " Chris Wilson
2020-05-28 10:20 ` Tvrtko Ursulin [this message]
2020-05-28 20:23 ` Chris Wilson
2020-05-29 7:25 ` Tvrtko Ursulin
2020-05-28 20:56 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for drm/i915: Special handling for bonded requests (rev2) Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8f1c20cb-b538-97c1-a953-772d75c232bd@linux.intel.com \
--to=tvrtko.ursulin@linux.intel.com \
--cc=Intel-gfx@lists.freedesktop.org \
--cc=chris@chris-wilson.co.uk \
--cc=xiaogang.li@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox