✗ CI.checkpatch: warning for drm/xe/guc: Improve quality and robustness of GuC log dumping (rev2)

Patchwork patchwork at emeril.freedesktop.org
Tue Jun 11 01:25:47 UTC 2024


== Series Details ==

Series: drm/xe/guc: Improve quality and robustness of GuC log dumping (rev2)
URL   : https://patchwork.freedesktop.org/series/134695/
State : warning

== Summary ==

+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
51ce9f6cd981d42d7467409d7dbc559a450abc1e
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 55275527a8e3c90264b21af86d1d5b7ee88c4766
Author: John Harrison <John.C.Harrison at Intel.com>
Date:   Mon Jun 10 18:20:28 2024 -0700

    drm/xe/guc: Dump entire CTB on errors
    
    The dump of the CT buffers was only showing the unprocessed data which
    is not generally useful for saying why a hang occurred - because it
    was probably caused by the commands that were just processed. So save
    and dump the entire buffer but in a more compact dump format. Also
    zero fill it on allocation to avoid confusion over uninitialised data
    in the dump.
    
    Signed-off-by: John Harrison <John.C.Harrison at Intel.com>
+ /mt/dim checkpatch bf9d891af55d3785eb9438efb053c991bf2b4b10 drm-intel
e8032ca02755 drm/xe/guc: Remove spurious line feed in debug print
17086d55b750 drm/xe/guc: Copy GuC log prior to dumping
19dded41b069 drm/xe/guc: Use a two stage dump for GuC logs and add more info
7607b9210892 drm/print: Introduce drm_line_printer
50ff41f41283 drm/xe/guc: Add a helper function for dumping GuC log to dmesg
b06f69de1641 drm/xe/guc: Dead CT helper
-:62: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'ct' - possible side-effects?
#62: FILE: drivers/gpu/drm/xe/xe_guc_ct.c:56:
+#define CT_DEAD(ct, hxg, reason_code) \
+	do { \
+		struct guc_ctb *_hxg = (hxg); \
+		if (_hxg) \
+			_hxg->info.broken = true; \
+		if (!(ct)->dead.reported) { \
+			struct xe_guc *guc = ct_to_guc(ct); \
+			spin_lock_irq(&ct->dead.lock); \
+			(ct)->dead.reason |= 1 << CT_DEAD_##reason_code; \
+			(ct)->dead.snapshot_log = xe_guc_log_snapshot_capture(&guc->log, true); \
+			(ct)->dead.snapshot_ct = xe_guc_ct_snapshot_capture((ct), true); \
+			spin_unlock_irq(&ct->dead.lock); \
+			queue_work(system_unbound_wq, &(ct)->dead.worker); \
+		} \
+	} while (0)

-:78: WARNING:MACRO_ARG_UNUSED: Argument 'ct' is not used in function-like macro
#78: FILE: drivers/gpu/drm/xe/xe_guc_ct.c:72:
+#define CT_DEAD(ct, hxg, reason) \
+	do { \
+		struct guc_ctb *_hxg = (hxg); \
+		if (_hxg) \
+			_hxg->info.broken = true; \
+	} while (0)

-:78: WARNING:MACRO_ARG_UNUSED: Argument 'reason' is not used in function-like macro
#78: FILE: drivers/gpu/drm/xe/xe_guc_ct.c:72:
+#define CT_DEAD(ct, hxg, reason) \
+	do { \
+		struct guc_ctb *_hxg = (hxg); \
+		if (_hxg) \
+			_hxg->info.broken = true; \
+	} while (0)

total: 0 errors, 2 warnings, 1 checks, 460 lines checked
55275527a8e3 drm/xe/guc: Dump entire CTB on errors




More information about the Intel-xe mailing list