aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2825-drm-amd-display-Fix-use-before-NULL-check-in-validat.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2825-drm-amd-display-Fix-use-before-NULL-check-in-validat.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2825-drm-amd-display-Fix-use-before-NULL-check-in-validat.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2825-drm-amd-display-Fix-use-before-NULL-check-in-validat.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2825-drm-amd-display-Fix-use-before-NULL-check-in-validat.patch
new file mode 100644
index 00000000..c9d03943
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2825-drm-amd-display-Fix-use-before-NULL-check-in-validat.patch
@@ -0,0 +1,48 @@
+From 500cc00cad80cf5b1a4a39306081f660c8192c98 Mon Sep 17 00:00:00 2001
+From: Harry Wentland <harry.wentland@amd.com>
+Date: Fri, 10 Nov 2017 12:11:44 -0500
+Subject: [PATCH 2825/4131] drm/amd/display: Fix use before NULL check in
+ validate_timing
+
+Found by smatch:
+drivers/gpu/drm/amd/amdgpu/../display/dc/dce110/dce110_timing_generator.c:1124
+dce110_timing_generator_validate_timing() warn: variable dereferenced
+before check 'timing' (see line 1116)
+
+Signed-off-by: Harry Wentland <harry.wentland@amd.com>
+Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
+Acked-by: Harry Wentland <harry.wentland@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c
+index 08e49dd..25ca721 100644
+--- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c
++++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_timing_generator.c
+@@ -1112,10 +1112,7 @@ bool dce110_timing_generator_validate_timing(
+ enum signal_type signal)
+ {
+ uint32_t h_blank;
+- uint32_t h_back_porch;
+- uint32_t hsync_offset = timing->h_border_right +
+- timing->h_front_porch;
+- uint32_t h_sync_start = timing->h_addressable + hsync_offset;
++ uint32_t h_back_porch, hsync_offset, h_sync_start;
+
+ struct dce110_timing_generator *tg110 = DCE110TG_FROM_TG(tg);
+
+@@ -1124,6 +1121,9 @@ bool dce110_timing_generator_validate_timing(
+ if (!timing)
+ return false;
+
++ hsync_offset = timing->h_border_right + timing->h_front_porch;
++ h_sync_start = timing->h_addressable + hsync_offset;
++
+ /* Currently we don't support 3D, so block all 3D timings */
+ if (timing->timing_3d_format != TIMING_3D_FORMAT_NONE)
+ return false;
+--
+2.7.4
+