[Intel-gfx] [PATCH 2/4] drm/i915: mark the global default (intel_)context as such
Dave Gordon
david.s.gordon at intel.com
Fri Dec 18 08:02:27 PST 2015
On 17/12/15 19:00, Dave Gordon wrote:
> On 17/12/15 12:27, Chris Wilson wrote:
>> On Thu, Dec 17, 2015 at 11:09:54AM +0000, Nick Hoath wrote:
[snip!]
>>
>> If you want to make such a big change, eliminate the default_ctx from
>> execlists.
>> -Chris
>
> No, we need the default (or global) context for idling the engines, as
> well as for sending initialisation commands during startup. We can't
> make the GPU stop using any given (user) context within a known bounded
> time except by telling it to switch to another context. Ergo, to stop
> using ANY user context, there must exist a non-user context that we can
> switch to.
After writing this last night, I realised this morning that maybe you
didn't mean "eliminate the default context per se" but rather "eliminate
the use of ring->default_context", which is a very different thing and
much less problematic.
So if that's the case, then, yes, I'll be quite happy to provide a
followup patch which eliminates most uses of ring->default_context and
in particular all those in intel_lrc.c where it's compared against
another context pointer. But I'm not going to do that extra work until
and unless this is merged, as it would just be a waste of effort.
The reason we just hit this specific use of default_context first is
because this is the one that was blocking the merge of Nick's "Fix
context/engine cleanup order" patch that you'd already R-B'd. Once this
is in, we can get Nick's patches in, and /then/ clean up all the other
comparisons made against ring->default_context.
.Dave.
More information about the Intel-gfx
mailing list