[PATCH v2] drm/amd/display: Use long for signed error code checks in commit planes

Christian König ckoenig.leichtzumerken at gmail.com
Thu May 2 13:16:03 UTC 2019


Am 02.05.19 um 15:14 schrieb Nicholas Kazlauskas:
> [Why]
>
> The type of 'r' is uint32_t and the return codes for both:
>
> - reservation_object_wait_timeout_rcu
> - amdgpu_bo_reserve
>
> ...are signed. While it works for the latter since the check is
> done on != 0 it doesn't work for the former since we check <= 0.
>
> [How]
>
> Make 'r' a long in commit planes so we're not doing any unsigned/signed
> conversion here in the first place.
>
> v2: use long instead of int (Christian)
>
> Cc: Christian König <ckoenig.leichtzumerken at gmail.com>
> Reported-by: Dan Carpenter <dan.carpenter at oracle.com>
> Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas at amd.com>

Reviewed-by: Christian König <christian.koenig at amd.com>

> ---
>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index becd8cb3aab6..ac22f7351a42 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -5332,7 +5332,7 @@ static void amdgpu_dm_commit_planes(struct drm_atomic_state *state,
>   				    struct drm_crtc *pcrtc,
>   				    bool wait_for_vblank)
>   {
> -	uint32_t i, r;
> +	uint32_t i;
>   	uint64_t timestamp_ns;
>   	struct drm_plane *plane;
>   	struct drm_plane_state *old_plane_state, *new_plane_state;
> @@ -5343,6 +5343,7 @@ static void amdgpu_dm_commit_planes(struct drm_atomic_state *state,
>   	struct dm_crtc_state *dm_old_crtc_state =
>   			to_dm_crtc_state(drm_atomic_get_old_crtc_state(state, pcrtc));
>   	int planes_count = 0, vpos, hpos;
> +	long r;
>   	unsigned long flags;
>   	struct amdgpu_bo *abo;
>   	uint64_t tiling_flags;



More information about the amd-gfx mailing list