On Tue, Jun 30, 2015 at 12:54:02PM +0200, Daniel Vetter wrote: > > + memset(&node, 0, sizeof(node)); > > + ret = drm_mm_insert_node_in_range_generic(&i915->gtt.base.mm, > > + &node, > > + 4096, 0, I915_CACHE_NONE, > > + 0, i915->gtt.mappable_end, > > + DRM_MM_SEARCH_DEFAULT, > > + DRM_MM_CREATE_DEFAULT); > > Hm, I think the plan with stolen is to mostly use it for giant scanout > buffers where we never plan to access them with the gpu. Maybe go with a > per-page loop here instead? You have a low-level pte writing call below > anyway. Would mean we'd need a 1-entry onstack sg_table too, but that > won't hurt. I'm not understanding. This is a per-page loop (because we don't need to bind the entire stolen vma into GGTT for copying with the CPU and thereby increase the risk of failure). Speaking of failure, should hibernation be interruptible? I guess it is usually called from an interruptible process context. -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx