• Ville Syrjälä's avatar
    drm/i915: Grab modeset locks for GPU rest on pre-ctg · 7514747d
    Ville Syrjälä authored
    On gen4 and earlier the GPU reset also resets the display, so we should
    protect against concurrent modeset operations. Grab all the modeset locks
    around the entire GPU reset dance, remebering first ti dislogde any
    pending page flip to make sure we don't deadlock. Any pageflip coming
    in between these two steps should fail anyway due to reset_in_progress,
    so this should be safe.
    
    This fixes a lot of failed asserts in the modeset code when there's a
    modeset racing with the reset. Naturally the asserts aren't happy when
    the expected state has disappeared.
    
    v2: Drop UMS checks, complete pending flips after the reset (Daniel)
    
    Cc: Daniel Vetter <daniel@ffwll.ch>
    Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    7514747d
i915_drv.c 46.2 KB