Hi,

On Thu, 2015-07-02 at 09:23 +0200, Daniel Vetter wrote:
> In
> 
> commit 9f658b7b62e7aefc1ee067136126eca3f58cabfd
> Author: Daniel Stone <daniels at collabora.com>
> Date:   Fri May 22 13:34:45 2015 +0100
> 
>     drm/crtc_helper: Replace open-coded CRTC state helpers
> 
> error handling code was broken, resulting in the first path not being
> checked correctly. Fix this by using the same pattern as in the
> transitional plane helper function drm_plane_helper_update.
> 
> @@ -927,15 +927,13 @@ int drm_helper_crtc_mode_set(struct drm_crtc
> *crtc, struct drm_display_mode *mod
>  
>       if (crtc->funcs->atomic_duplicate_state)
>               crtc_state = crtc->funcs
> ->atomic_duplicate_state(crtc);
> -     else {
> +     else if (crtc->state)
> +             crtc_state = 
> drm_atomic_helper_crtc_duplicate_state(crtc);
> +     else
>               crtc_state = kzalloc(sizeof(*crtc_state), 
> GFP_KERNEL);
> -             if (!crtc_state)
> -                     return -ENOMEM;
> -             if (crtc->state)
> -                     __drm_atomic_helper_crtc_duplicate_state(crt
> c, crtc_state);
> -             else
> -                     crtc_state->crtc = crtc;

Isn't this line (the crtc_state->crtc) assignment now missing from the
kzalloc branch?

With that fixed:
Reviewed-by: Daniel Stone <daniels at collabora.com>

Cheers,
Daniel

Reply via email to