drm/i915: Make prepare_plane_fb fully interruptible.
Now that we agreed on not preserving framebuffers pinning is finally
allowed to fail because of signals. Use this to make pinning
and acquire the mutex in an interruptible way too.
Unpinning is still uninterruptible, because it happens as a cleanup
of old state, or undoing pins after one of the pins failed.
The intel_pin_and_fence_fb_obj in page_flip will also wait interruptibly,
and can be aborted now.
Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>