On 2012-08-15 02:18, Chris Wilson wrote: > On Tue, 14 Aug 2012 14:35:15 -0700, Ben Widawsky <ben at bwidawsk.net> > wrote: >> In order to make the HW state CCID match with what we think it >> should >> be, we must order a switch to the default context. >> >> The really sad thing here is that the switch can potentially fail, >> and >> as such we have to assume contexts no longer work. There is likely >> room >> for improvement but until we actually start seeing the case occur, I >> think it should be fine. >> >> This was accidentally left this out of the first series, noticed by >> Chris Wilson. > > However that do_switch() is a no-op as it spots that the > ring->last_ctx_obj is the DEFAULT_CONTEXT (saved across s&r) and we > exit > early. > > The only clean way I could see was to extract the actual set_switch > portion of do_switch() (i.e. discard the initial checks and > pre-/post-op > pinning). Which brings you nicely into the next few patches... > -Chris Agreed, I was thinking re-ordering the series would just magically solve all such issues :-) -- Ben Widawsky, Intel Open Source Technology Center