On Fri, Jun 26, 2015 at 03:05:29PM +0300, Mika Kuoppala wrote: > Daniel Vetter <daniel@xxxxxxxx> writes: > > > On Thu, Jun 25, 2015 at 06:35:18PM +0300, Mika Kuoppala wrote: > >> +static int setup_scratch(struct i915_address_space *vm) > >> +{ > >> + struct i915_address_space *ggtt_vm = &to_i915(vm->dev)->gtt.base; > >> + > >> + if (i915_is_ggtt(vm)) > >> + return setup_scratch_ggtt(vm); > >> + > >> + vm->scratch_page = ggtt_vm->scratch_page; > >> + vm->scratch_pt = ggtt_vm->scratch_pt; > >> + vm->scratch_pd = ggtt_vm->scratch_pd; > >> + > >> + return 0; > >> +} > > > > The point of a ppgtt is full isolation, sharing the scratch page destroys > > that. Hence nack. If you want a bit of polish, renaming initialize_pd/pt > > to initialize_scratch_pd/pt would make sense though I think. > > -Daniel > > We already have a shared scratch. This just makes the upper layer > structures also shared as there is no point of having identical > scratch pt and scratch pd pointing to the same scratch. > > Do we want per ppgtt scratch? I have patches for that also. Summary of our irc discussion: Yes I think we want a per-ppgtt scratch, and I even thought we once had such a thing. But didn't digg around in history tbh. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx