• Daniel Vetter's avatar
    drm/i915: bind objects to the global gtt only when needed · 74898d7e
    Daniel Vetter authored
    And track the existence of such a binding similar to the aliasing
    ppgtt case. Speeds up binding/unbinding in the common case where we
    only need a ppgtt binding (which is accessed in a cpu coherent fashion
    by the gpu) and no gloabl gtt binding (which needs uc writes for the
    ptes).
    
    This patch just puts the required tracking in place.
    
    v2: Check that global gtt mappings exist in the error_state capture
    code (with Chris Wilson's llc reloc patches batchbuffers are no longer
    relocated as mappable in all situations, so this matters). Suggested
    by Chris Wilson.
    
    v3: Adapted to Chris' latest llc-reloc patches.
    
    v4: Fix a bug in the i915 error state capture code noticed by Chris
    Wilson.
    Reviewed-and-tested-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Signed-Off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    74898d7e
i915_gem.c 107 KB