On Mon, Feb 06, 2017 at 04:18:23PM +0800, Zhi Wang wrote: > Hi Chris: > Thanks for the reply! :P Have you also fixed here with your new ideas? > > in intel_lrc: > > static u64 execlists_update_context(struct drm_i915_gem_request *rq) > { > struct intel_context *ce = &rq->ctx->engine[rq->engine->id]; > struct i915_hw_ppgtt *ppgtt = rq->ctx->ppgtt; // ----> > check if we should get ppgtt from dev_priv->mm.aliasing_ppgtt. Oh dear. Yup, that's a bug. Can you send a ppgtt = rq->ctx->ppgtt ?: &rq->i915->mm.aliasing_ppgtt; One day we will bite the bullet and set ctx->ppgtt to be the aliasing_ppgtt (and maybe even fix it so that we can global_gtt as appropriate), and then just fix up the more unusual case in execbuf to bind using vm = global_gtt instead (if aliasing). -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx