From: Maarten Lankhorst Date: Tue, 11 Jul 2017 14:33:05 +0000 (+0200) Subject: drm/nouveau: Handle drm_atomic_helper_swap_state failure X-Git-Tag: v4.14-rc1~8^2~52^2~19 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=8572636e45167adbdb997fe5c43122bf77fd2291;p=linux-block.git drm/nouveau: Handle drm_atomic_helper_swap_state failure drm_atomic_helper_swap_state() will be changed to interruptible waiting in the next few commits, so all drivers have to be changed to handling failure. Signed-off-by: Maarten Lankhorst Cc: Ben Skeggs Cc: nouveau@lists.freedesktop.org Link: http://patchwork.freedesktop.org/patch/msgid/20170711143314.2148-4-maarten.lankhorst@linux.intel.com Reviewed-by: Sean Paul Signed-off-by: Daniel Vetter --- diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c index c1e7307a2538..747c99c1e474 100644 --- a/drivers/gpu/drm/nouveau/nv50_display.c +++ b/drivers/gpu/drm/nouveau/nv50_display.c @@ -4123,6 +4123,10 @@ nv50_disp_atomic_commit(struct drm_device *dev, goto err_cleanup; } + ret = drm_atomic_helper_swap_state(state, true); + if (ret) + goto err_cleanup; + for_each_plane_in_state(state, plane, plane_state, i) { struct nv50_wndw_atom *asyw = nv50_wndw_atom(plane_state); struct nv50_wndw *wndw = nv50_wndw(plane); @@ -4136,7 +4140,6 @@ nv50_disp_atomic_commit(struct drm_device *dev, } } - drm_atomic_helper_swap_state(state, true); drm_atomic_state_get(state); if (nonblock)