[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