diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1867-drm-amd-display-Use-long-for-signed-error-code-check.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1867-drm-amd-display-Use-long-for-signed-error-code-check.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1867-drm-amd-display-Use-long-for-signed-error-code-check.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1867-drm-amd-display-Use-long-for-signed-error-code-check.patch new file mode 100644 index 00000000..47eba4ef --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/1867-drm-amd-display-Use-long-for-signed-error-code-check.patch @@ -0,0 +1,58 @@ +From 041c640dc93c6c6c0205fe7a10972c3a2732b6cf Mon Sep 17 00:00:00 2001 +From: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> +Date: Thu, 2 May 2019 09:14:27 -0400 +Subject: [PATCH 1867/2940] drm/amd/display: Use long for signed error code + checks in commit planes +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +[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) + +Change-Id: I6b44298591544a0f650f95db0fdf28779a104e3d +Reported-by: Dan Carpenter <dan.carpenter@oracle.com> +Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> +Reviewed-by: Christian König <christian.koenig@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 a7f9d13b41cd..312e1fc71b47 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +@@ -5361,7 +5361,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; +@@ -5372,6 +5372,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; +-- +2.17.1 + |