[PATCH v3 1/1] drm/xe/guc: Fix GuC log/ct output via debugfs
Julia Filipchuk
julia.filipchuk at intel.com
Tue Jan 7 20:22:52 UTC 2025
Change to disable asci85 GuC logging only when output to devcoredump
(was temporarily disabled for all code paths).
v2: Ignore only for devcoredump case (not dmesg output).
v3: Rebase to resolve parent tag mismatch.
Signed-off-by: Julia Filipchuk <julia.filipchuk at intel.com>
---
drivers/gpu/drm/xe/xe_devcoredump.c | 8 +++++---
include/drm/drm_print.h | 2 ++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_devcoredump.c b/drivers/gpu/drm/xe/xe_devcoredump.c
index 6980304c8903..8e5d1f9866a7 100644
--- a/drivers/gpu/drm/xe/xe_devcoredump.c
+++ b/drivers/gpu/drm/xe/xe_devcoredump.c
@@ -424,10 +424,12 @@ void xe_print_blob_ascii85(struct drm_printer *p, const char *prefix,
* Splitting blobs across multiple lines is not compatible with the mesa
* debug decoder tool. Note that even dropping the explicit '\n' below
* doesn't help because the GuC log is so big some underlying implementation
- * still splits the lines at 512K characters. So just bail completely for
- * the moment.
+ * still splits the lines at 512K characters.
+ *
+ * Only disable from devcoredump output.
*/
- return;
+ if (p->coredump)
+ return;
#define DMESG_MAX_LINE_LEN 800
#define MIN_SPACE (ASCII85_BUFSZ + 2) /* 85 + "\n\0" */
diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
index f77fe1531cf8..f5ea7f38ba09 100644
--- a/include/drm/drm_print.h
+++ b/include/drm/drm_print.h
@@ -182,6 +182,7 @@ struct drm_printer {
unsigned int counter;
} line;
enum drm_debug_category category;
+ bool coredump;
};
void __drm_printfn_coredump(struct drm_printer *p, struct va_format *vaf);
@@ -335,6 +336,7 @@ drm_coredump_printer(struct drm_print_iterator *iter)
.printfn = __drm_printfn_coredump,
.puts = __drm_puts_coredump,
.arg = iter,
+ .coredump = true,
};
/* Set the internal offset of the iterator to zero */
--
2.47.1
More information about the Intel-xe
mailing list