aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2878-drm-amd-display-Don-t-call-dm_log_to_buffer-directly.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2878-drm-amd-display-Don-t-call-dm_log_to_buffer-directly.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2878-drm-amd-display-Don-t-call-dm_log_to_buffer-directly.patch59
1 files changed, 59 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2878-drm-amd-display-Don-t-call-dm_log_to_buffer-directly.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2878-drm-amd-display-Don-t-call-dm_log_to_buffer-directly.patch
new file mode 100644
index 00000000..70f98fc2
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2878-drm-amd-display-Don-t-call-dm_log_to_buffer-directly.patch
@@ -0,0 +1,59 @@
+From 001e779951427e35a9066e235561a002f0a64e2a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
+Date: Tue, 28 Nov 2017 12:06:13 +0100
+Subject: [PATCH 2878/4131] drm/amd/display: Don't call dm_log_to_buffer
+ directly in dc_conn_log
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+dm_log_to_buffer logs unconditionally, so calling it directly resulted
+in the main message being logged even when the event type isn't enabled
+in the event mask.
+
+To fix this, use the new dm_logger_append_va API.
+
+Fixes spurious messages like
+
+ [drm] {1920x1200, 2080x1235@154000Khz}
+
+in dmesg when a mode is set.
+
+v2:
+* Use new dm_logger_append_va API, fixes incorrect va_list usage in v1
+* Just use and decrease entry.buf_offset to get rid of the trailing
+ newline
+
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
+Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
+---
+ drivers/gpu/drm/amd/display/dc/basics/log_helpers.c | 10 +++-------
+ 1 file changed, 3 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/display/dc/basics/log_helpers.c b/drivers/gpu/drm/amd/display/dc/basics/log_helpers.c
+index 6e43168..854678a 100644
+--- a/drivers/gpu/drm/amd/display/dc/basics/log_helpers.c
++++ b/drivers/gpu/drm/amd/display/dc/basics/log_helpers.c
+@@ -83,15 +83,11 @@ void dc_conn_log(struct dc_context *ctx,
+ link->link_index);
+
+ va_start(args, msg);
+- entry.buf_offset += dm_log_to_buffer(
+- &entry.buf[entry.buf_offset],
+- LOG_MAX_LINE_SIZE - entry.buf_offset,
+- msg, args);
++ dm_logger_append_va(&entry, msg, args);
+
+- if (entry.buf[strlen(entry.buf) - 1] == '\n') {
+- entry.buf[strlen(entry.buf) - 1] = '\0';
++ if (entry.buf_offset > 0 &&
++ entry.buf[entry.buf_offset - 1] == '\n')
+ entry.buf_offset--;
+- }
+
+ if (hex_data)
+ for (i = 0; i < hex_data_count; i++)
+--
+2.7.4
+