drm/i915: Do not attempt to re-enable an unconnected primary plane
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 27 Nov 2013 12:01:32 +0000 (12:01 +0000)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 27 Nov 2013 12:37:18 +0000 (13:37 +0100)
commit947fdaadf05480e567d3cd58d456240655063d03
tree3ee8dac8fb21a8af048577dd730d083589ceccb0
parent1da51581b00b3fc3ac72156e2a69c6bab71f7794
drm/i915: Do not attempt to re-enable an unconnected primary plane

Due to user fudging (for instance using video=VGA-1:e with FBDEV=n) we can
attempt to reset an inconsistent CRTC that is marked as active but has
no assigned fb. It would be wise to fix this earlier, but the long
term plan is to have primary and secondary planes associated with a
CRTC, in which crtc->fb being NULL will be expected. So for a quick
short term fix with pretensions of grandeur, just check for a NULL fb
during GPU reset and ignore the plane restoration.

This fixes a potential hard hang (a panic in the panic handler)
following a GPU hang.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
[danvet: Add a corresponding fixme comment.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_display.c